vf-向對象程序設計基礎_第1頁
vf-向對象程序設計基礎_第2頁
vf-向對象程序設計基礎_第3頁
vf-向對象程序設計基礎_第4頁
vf-向對象程序設計基礎_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第八章面向對象程序設計1精選課件ppt學習目標:1)了解面向對象程序設計的基本知識2)理解VFP中的類、屬性、事件與方法程序等基本概念3)熟悉對象的操作2精選課件ppt8.1面向對象程序設計基礎知識一、基本概念1、對象“對象”(Object)是面向對象程序設計方法學中最基本的概念。在應用領域中有意義的、與所要解決問題有關系的任何事物都可以稱作對象。它既可以是具體的物質實體的抽象,也可以是人為的概念。例如一名學生、一所學校、一個表單、一個按鈕等都可以作為一個對象。3精選課件ppt2、對象的屬性、事件和方法(1)屬性

所謂屬性(Property)就是對象表現出來的特征、狀態(tài)或行為,就像錄音機有型號、尺寸、顏色、出廠日期等特征一樣。不同的對象可以擁有各種相同或不同的屬性,其中有些屬性是只讀并且無法改變的,而有些則可以通過設定來改變。這就好像錄音機的出廠日期、型號等屬性是無法改變的,但操作面板上所顯示的時間則可通過設定來改變。4精選課件ppt(2)事件與事件響應事件(Event)就是對象所碰到的情況,即由系統預先定義的由用戶或系統觸發(fā)的動作。例如,有錄音帶被放進錄音機,或者是錄音帶播完,這樣的情況就是一個“事件”。當一個事件發(fā)生后,就需要對該事件進行響應。也就說,可以事先指定當事件發(fā)生時,對象要做出什么樣的反應。例如,當“錄音帶放進錄音機”的事件發(fā)生時,可以指定是直接“播放”,還是先“快進”一小段后再開始“播放”。5精選課件ppt事件可以由一個用戶動作產生,如單擊鼠標或按鍵,也可以由程序代碼或者系統產生,如計時器每隔一段時間產生的到時事件就是由系統產生。大多數情況下,事件是通過用戶的交互操作產生的。

在VisualFoxPro中,可以激發(fā)事件的用戶動作包括:單擊鼠標(Click)、雙擊鼠標(DblClick)、按鍵(keyPress)、移動鼠標(MouseMove)等。6精選課件ppt(3)方法方法(Method)是用來處理或操縱對象的途徑。對象通常會提供一些方法,以便應用程序可以使用對象所提供的服務。例如,錄音機提供了“播放”、“停止”、“暫停”、“快進”、“快退”等操作按鈕,而這些按鈕其實就相當于錄音機提供的方法。用戶只要按下這些按鈕,就可以得到錄音機所提供的播放、停止播放、快進、快退等服務。7精選課件ppt3、類類(Class)和對象關系密切,但并不相同。類是對同一類對象的抽象,類包含了有關對象的特征和行為信息,它是對象的藍圖和框架,而類的實例就是一個對象。例如:橋梁是一個抽象的概念,而東方紅大橋、涪江三橋、涪江二橋就是橋梁這個概念衍生而來的具體實例。這里的橋梁就是類,而東方紅大橋、涪江三橋、涪江二橋就是具體對象。8精選課件ppt4、類的特性(1)繼承性。子類具有父類的基本特性,并且可以在父類基礎上派生出更多的特性。(2)封裝性將不必要的代碼全部封裝(3)多態(tài)性多態(tài)指由繼承而產生的相關的不同的類,其對象對同一消息做出不同的響應9精選課件ppt二、基本方法對象數據與代碼屬性事件方法應用程序讀取/設置調用響應面向對象編程模型10精選課件ppt三、面向對象編程實例例1、一個簡單表單程序的編寫示例。表單上有兩個按鈕,一個按鈕是“顯示英文”,另一個按鈕是“退出”。運行時,首先顯示一行文字:“歡迎光臨!”。當單擊“顯示英文”按鈕時,文字變成英文的“He11o,World!”;當單擊“退出”按鈕時,關閉表單,程序結束。11精選課件ppt步驟:(1)創(chuàng)建容器對象------表單。操作步驟:“文件”菜單中的“新建”,彈出“新建”對話框,選取“表單”,單擊右上方的“新建文件”按鈕,進入表單設計器。新表單具有默認名稱Form1,默認標題Fom1。(2)定義數據環(huán)境------本例沒有涉及數據庫與表操作。(3)擺放控件對象。12精選課件pptLable1控件Command1控件Command2控件13精選課件ppt(4)設置對象屬性。如果沒有出現“屬性”窗口,可以從“顯示”菜單中點選“屬性”,或者鼠標左鍵單擊系統工具欄上的“屬性窗口”按鈕,使“屬性”窗口出現在屏幕上。分別將label1、command1、command2的caption屬性設置為:“歡迎光臨”、“顯示英文”和“退出”。(5)編寫事件代碼。針對事件進行編程,從而實現對用戶鼠標事件的響應。14精選課件ppt①Command1的Click事件。鼠標雙擊Command1,在出現的代碼窗口中,左上方“對象”框中應是“Commmd1”,右上方“過程”框中應是“Click”,表示現在編寫命令按鈕Command1的Click事件代碼。如果不是,應使用鼠標左鍵進行選擇。在代碼窗口中輸入以下內容:ThisForm..Label1.Caption="Hello,World!"②Command2的Click事件代碼。用鼠標單擊代碼窗口左上方“對象”框右邊的向下箭頭,在彈出的列表中選擇“Command2”,或者在表單上直接用鼠標雙擊Command2,在Click事件代碼窗口中輸入:

Thisform.Release15精選課件ppt運行時界面點擊顯示英文后的界面16精選課件ppt8.2類、屬性、事件與方法程序一、類的概念1、基類基類是VFP預先定義好的類?;愑址譃榭丶惡腿萜黝悾纱藙?chuàng)建出的具體對象又稱為控件類對象和容器類對象。17精選課件ppt(1)容器類:容納別的對象,并允許訪問所包含的對象。容器類包括表單、命令組按鈕、頁框等。(2)控件類:不能容納其他對象的基類。控件類包括標簽、文本框、復選框、組合框、定時器等。詳細參考p181表格。18精選課件ppt2、子類以某個類(基類)為起點創(chuàng)建出的新類稱為子類,子類繼承父類的全部特征。3、用戶自定義類用戶從基類派生出子類,并且根據實際情況對其屬性、方法等作了調整或增加或刪除等操作。4、類庫用來存儲可視化方式設計的類,擴展名為.VCX。19精選課件ppt二、屬性、事件與方法程序1、屬性VFP中,對象的屬性可以通過屬性窗口設置,也可以通過代碼在程序運行時設置。常用屬性見p182VFP中,可以在事件代碼窗口中編寫代碼程序。VFP核心事件如下表:2、事件20精選課件ppt事件觸發(fā)事件操作Click按下并釋放鼠標左鍵DblClick雙擊鼠標左鍵,選擇列表框或組合框中選項并回車Destroy釋放對象時GetFocus接收到焦點(Focus)Init創(chuàng)建對象InteractiveChange使用鍵盤或鼠標改變控件的值時KeyPress當用戶按下并釋放一個鍵時Load在創(chuàng)建一個對象之前發(fā)生21精選課件ppt事件觸發(fā)事件操作LostFocus當對象失去焦點(Focus)時MouseDown當用戶按下鼠標鍵時MouseMove當鼠標移動到對象上時MouseUp當釋放鼠標按鍵時ProgrammaticChange以編程方式更改控件的值時發(fā)生RightClick在控件中按下并釋放鼠標右鍵時Unload釋放對象時22精選課件ppt3、方法程序方法是對象所能執(zhí)行的操作,方法程序是對象能夠執(zhí)行的、完成的相應任務的操作命令代碼的集合。以表單為例,常用方法程序有如下一些:23精選課件ppt方法名功能方法名功能AddObject向表單中添加對象Line在表單上畫線Hide隱藏表單Box在表單上畫矩形Show顯示表單Circle在表單上畫圓圈和圓弧Refresh刷新表單上控件的值Cls清除表單上的文本和圖形Release釋放表單或表單集SetFocus設置控件對象的焦點24精選課件ppt8.3對象的操作一、對象的包容層次一個容器類對象包含另一個對象時,該對象是容器類對象的子對象,而容器類對象是該對象的父對象。下圖是一種可能的對象包容關系示意圖。表單集FormSet表單Form1文本框Text1選項按鈕組選項按鈕1選項按鈕2命令按鈕Command1命令按鈕組命令按鈕1命令按鈕225精選課件ppt二、對象的引用引用關鍵字:關鍵字引用關系This該對象本身ThisForm該對象所在的表單ThisFormSet該對象所在的表單集Parent包含該對象的直接容器引用時應該根據對象所在的層次決定其引用方法,一般而言是從上到下逐級應用。具體參看p183的說明部分。26精選課件ppt引用舉例:This

&&當前具體對象Thisform

&&當前表單Thisformset

&&當前表單集Thisform.label1

&&當前表單中名為lable1的標簽Tmand1

&&當前表單名為

command1的按鈕Tmand1&&當前表單中名為commandgroup1中的名為command1的按鈕27精選課件ppt三、設置對象的屬性值(1)設置單個屬性在事件或方法程序中用命令設置屬性,語法如下:<對象引用>.<對象屬性>=<值>常見的屬性值類型有數值型、字符型、邏輯型、顏色RGB值等。28精選課件ppt例如:Thisform.lable1.caption=“hello,world!”Thisform.lable1.ForeColor=RGB(0,0,0)Tmand1.visible=.t.Tmand1.enable=.f.當前表單label1的caption(標題)屬性設置為“hello,world”當前表單label1的字體顏色屬性設置為黑色設置當前表單command1可見設置當前表單command1不可使用29精選課件ppt(2)設置多個屬性當對一個對象一次性設置多個屬性時,可以簡化設置過程。語法如下:格式:With<對象引用>.<屬性1>=<值1>…….<屬性n>=<值n>EndWith功能:一次設置指定對象的多個屬性值。30精選課件ppt例如,設置標簽Label1的多個屬性,可以使用以下語句實現:withthisform.labell

.enabled=.T. &&控件有效.forecolor=

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論