面向?qū)ο罂梢暬幊袒A(chǔ)_第1頁
面向?qū)ο罂梢暬幊袒A(chǔ)_第2頁
面向?qū)ο罂梢暬幊袒A(chǔ)_第3頁
面向?qū)ο罂梢暬幊袒A(chǔ)_第4頁
面向?qū)ο罂梢暬幊袒A(chǔ)_第5頁
已閱讀5頁,還剩38頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第十章

面向?qū)ο罂梢暬幊袒A(chǔ)

本章要點(diǎn)新概念的引入設(shè)計(jì)類對象的操作對象設(shè)計(jì)實(shí)例思考題實(shí)驗(yàn)10.1新概念的引入

1.對象(1)對象(Object)對象是反映客觀事物屬性及行為特征的描述。每個對象都具有描述它的特征的屬性,及附屬于它的行為。對象把事物的屬性和行為封裝在一起,是一個動態(tài)的概念。對象是面向?qū)ο缶幊痰幕驹?,是“類”的具體實(shí)例。要點(diǎn)新概念的引入

(2)對象的屬性對象的屬性特征標(biāo)識了對象的物理性質(zhì);對象的行為特征描述了對象可執(zhí)行的行為動作。對象的每一種屬性,都是與其它對象加以區(qū)別的特性,都具有一定的含義,并賦予一定的值。要點(diǎn)

在VisualFoxPro應(yīng)用程序中,系統(tǒng)窗口和用戶自定義的窗口都可以被看成是對象。具有以下屬性和行為特征:.窗口的標(biāo)題及窗口的大??;.窗口的前景和背景顏色;.窗口中所顯示信息的內(nèi)容及格式;.窗口中提供了哪些控件;.窗口中每個控件在窗口的位置;.窗口中每個控件的大??;.窗口中的控件應(yīng)如何操作。另外,在VisualFoxPro應(yīng)用程序中,命令按鈕也可以看成是對象,具有以下屬性和行為特征:.命令按鈕在窗口的位置;.命令按鈕的標(biāo)題及命令按鈕的大?。?按動命令按鈕進(jìn)行什么操作。要點(diǎn)

2.類(Class)

所謂類,就是一組對象的屬性和行為特征的抽象描述?;蛘哒f,類是具有共同屬性、共同操作性質(zhì)的對象的集合。在VisualFoxPro系統(tǒng)中,類就像是一個模板,對象都是由類生成的,類定義了對象所有的屬性、事件和方法,從而決定了對象的屬性和它的行為。要點(diǎn)(1)基類

基類又可以分成容器類和控件類。容器類(Containers)可以容納其它對象,并允許訪問所包含的對象。如表單,自身是一個對象,它又可以把按鈕、編輯框、文本框等放在表單中。控件類不能容納其它對象,它沒有容器類靈活。如文本,自身是一個對象,在文本中不可放其它對象。由控件類創(chuàng)造的對象,是不能單獨(dú)使用和修改的,它只能做為容器類中的一個元素,通過由容器類創(chuàng)造的對象修改或使用。要點(diǎn)(2)類的特性類具有繼承性、封裝性和多態(tài)性等特性。要點(diǎn)

繼承性(Inheritance)指通過繼承關(guān)系利用已有的類構(gòu)造新類。任何一個基類都有它的屬性。即使用戶沒有定義,VisualFoxPro系統(tǒng)也賦給基類相應(yīng)的缺省值。在創(chuàng)造對象時,可以利用基類派生出另一個新類。通常把從已有的類派生出的新類稱為子類,已有的類稱為父類。子類不但具有父類的全部屬性和方法,而且還允許用戶根據(jù)需要修改對已有的屬性和方法進(jìn)行修改或添加新的屬性和方法。

要點(diǎn)

封裝性(Encapsulation)是指類的內(nèi)部信息對用戶是隱蔽的。

在類的引用過程中,用戶只能看到封裝界面上的信息,對象的內(nèi)部信息(數(shù)據(jù)結(jié)構(gòu)及操作范圍、對象間的相互作用等)則是隱蔽的,只有程序開發(fā)者才了解類的內(nèi)部信息。

要點(diǎn)

3.屬性屬性(Attribute)是用來描述對象特征的參數(shù)。屬性是屬于某一個類的,不能獨(dú)立于類而存在。派生出的新類將繼承基類和父類的全部屬性。要點(diǎn)4.事件與方法事件(Event)是每個對象可能用以識別和響應(yīng)的某些行為和動作。在VisualFoxPro系統(tǒng)中,對象可以響應(yīng)50多種事件。多數(shù)情況下,事件是通過用戶的操作行為引發(fā)的,當(dāng)事件發(fā)生時,將執(zhí)行包含在事件過程中的全部代碼。方法(Method)是附屬于對象的行為和動作。要點(diǎn)

10.2設(shè)計(jì)類通常在進(jìn)行應(yīng)用程序設(shè)計(jì)時,把大量的屬性、方法和事件定義在一個類中,用戶可以根據(jù)需要,在這個類的基礎(chǔ)上派生出一個或多個對象,再在這些對象的基礎(chǔ)上設(shè)計(jì)應(yīng)用程序。

1.創(chuàng)建類方法一:菜單方式創(chuàng)建類,方法二:命令方式創(chuàng)建類,命令格式如下:CREATECLASS<類名>as<父類>或CREATECLASS<類名>OF<類庫名>as<父類>要點(diǎn)

2.類屬性的定義當(dāng)類創(chuàng)建完成后,新類就已繼承了基類或父類的全部屬性。同時,系統(tǒng)也允許修改基類、父類原有的屬性,或設(shè)置類的新屬性。

要點(diǎn)

3.類的方法和事件的定義當(dāng)類創(chuàng)建完成后,雖然已繼承了基類或父類的全部方法和事件,但多數(shù)時候還是需要修改基類、父類原有的方法和事件,或加入的新方法。

要點(diǎn)

4.通過編程定義類在VisualFoxPro系統(tǒng)中,定義類除了在類設(shè)計(jì)器中進(jìn)行之外,還可以通過DEFINECLASS命令編程來實(shí)現(xiàn)。Defineclass<類名>as<父類名>enddefine要點(diǎn)

10.3對象的操作

類是對象的抽象,對象是類的實(shí)例。因此,對象的過程代碼的設(shè)計(jì)是最重要的操作之一。我們可以利用程序代碼,在類的基礎(chǔ)上派生出對象的屬性、方法和事件,或進(jìn)行重新設(shè)計(jì)。

要點(diǎn)

1.由類創(chuàng)建對象對象是在類的基礎(chǔ)上派生出來的,而只有具體的對象,才能實(shí)現(xiàn)類的事件或方法的操作。可使用函數(shù):CREATEOBJECT()創(chuàng)建對象。命令格式如下:對象名=CREATEOBJECT(類名)添加對象:addobject<對象>as<對象類型>要點(diǎn)要點(diǎn)2.設(shè)置對象的屬性

對象的父類名.當(dāng)前對象名.屬性名=屬性值

由于每個對象可以有多個屬性,進(jìn)行設(shè)置時寫出全部路徑非常麻煩,所以VisualFoxPro系統(tǒng)還給我們提供了另一個設(shè)置對象屬性值的語句。其格式為:

WITH〈路徑〉〈屬性〉ENDWITH

3.調(diào)用對象的方法和觸發(fā)對象的事件(1)調(diào)用對象的方法調(diào)用對象的方法為:父類名.對象名.方法名(2)觸發(fā)對象的事件事件與方法不同,只有當(dāng)事件發(fā)生后,對應(yīng)的事件代碼被執(zhí)行。可以通過命令按鈕觸發(fā)事件;或使用鼠標(biāo)產(chǎn)生單擊、雙擊和移動、拖放等事件;或使用Keyboard命令產(chǎn)生Keypress事件。要點(diǎn)

4.添加對象命令格式如下:addobject<對象>as<對象類型>要點(diǎn)

10.4對象設(shè)計(jì)實(shí)例

1.用編程方式設(shè)計(jì)對象用編程方式設(shè)計(jì)對象,要求我們不僅要掌握一定數(shù)量的VisualFoxPro系統(tǒng)提供的操作命令和函數(shù),還要掌握編寫程序的基本要領(lǐng)。

2.用面向?qū)ο蠓绞皆O(shè)計(jì)對象用面向?qū)ο蠓绞皆O(shè)計(jì)對象,要求我們在掌握VisualFoxPro系統(tǒng)提供的各種設(shè)計(jì)器操作基礎(chǔ)上,掌握一定的編寫程序的基本要領(lǐng)。要點(diǎn)第十一章

表單設(shè)計(jì)及運(yùn)行

本章要點(diǎn)建立表單修改表單運(yùn)行表單常用控件實(shí)用表單練習(xí)建立表單

表單(Form)在系統(tǒng)中是用戶的主要界面,也有人把它稱為屏幕(Screen)或窗口。但它不是一個普通的窗口,因?yàn)槠渲械目丶梢杂袑傩?、事件和方法,并且表單和表單集本身也是有屬性、事件和方法的編程對象。在VisualFoxPro系統(tǒng)中,表單擁有多個屬性,可以響應(yīng)多種事件、實(shí)現(xiàn)多種方法操作。表單為數(shù)據(jù)庫信息的顯示、輸入和編輯提供了非常簡便的方法,表單的設(shè)計(jì)是可視化編程的基礎(chǔ)。表單就是一個容器,它可以容納多個控件。

1.用表單設(shè)計(jì)器建立表單使用系統(tǒng)提供的表單設(shè)計(jì)器創(chuàng)建新的表單,可以在菜單方式或命令方式下進(jìn)行。方法一:菜單方式打開“文件”菜單,選擇“新建”;在“新建”窗口,選擇“表單”,再按“新建文件”按鈕,進(jìn)入“表單設(shè)計(jì)器”窗口;打開“顯示”菜單,完成對表單屬性、事件和方法的定義:再選擇“保存”,表單建立完成。方法二:命令方式命令格式如下:CREATEFORM<表單>.SCX

2.用表單向?qū)Ы⒈韱?/p>

(1)用表單向?qū)?chuàng)建單表表單打開“文件”菜單,選擇“新建”,在“新建”窗口,選擇“表單”,再按“向?qū)А卑粹o,進(jìn)入“向?qū)нx取”窗口;在“向?qū)нx取”窗口,選擇“表單向?qū)А表?xiàng),系統(tǒng)將提供單表表單向?qū)?,按步驟依照“表單向?qū)А蓖瓿蓪伪肀韱蔚脑O(shè)計(jì)。(2)用表單向?qū)?chuàng)建一對多表表單打開“文件”菜單,選擇“新建”,在“新建”窗口,選擇“表單”,再按“向?qū)А卑粹o,進(jìn)入“向?qū)нx取”窗口;在“向?qū)нx取”窗口,選擇“表單向?qū)А表?xiàng),系統(tǒng)將提供一對多表表單向?qū)?,按步驟依照“表單向?qū)А蓖瓿梢粚Χ啾肀韱蔚脑O(shè)計(jì)。

修改表單表單一旦建立完成,表單及表單中對象的屬性、方法和事件已確定。如果用戶對已有的對象的屬性、方法和事件不滿意,可以進(jìn)行修改。

1.用表單設(shè)計(jì)器修改表單打開“文件”菜單,選擇“打開”;在“打開”窗口中,輸入“表單名”;在“表單設(shè)計(jì)器”窗口,單擊鼠標(biāo)右鍵,在“表單”快捷菜單中,選擇“執(zhí)行表單”。

2.以命令方式修改表單命令格式如下:MODIFYFORM〈表單〉.scx,運(yùn)行表單

1.在表單設(shè)計(jì)器中運(yùn)行表單打開“文件”菜單,選擇“打開”;在“打開”窗口中,輸入“表單名”;在“表單設(shè)計(jì)器”窗口,單擊鼠標(biāo)右鍵,在“表單”快捷菜單中,選擇“執(zhí)行表單”。

2.以命令方式運(yùn)行表單命令格式如下:DOFORM〈表單〉.scx1無控件表單

3“計(jì)時器”控件5“文本框”控件

7“微調(diào)”控件9“復(fù)選框”控件11“表格”控件13設(shè)計(jì)多頁表單2“標(biāo)簽”控件4“命令按鈕”控件6“組合框”控件8

“單選按鈕”控件

10“圖像”控件12“命令按鈕組”控件

常用表單控件設(shè)計(jì)無控件表單

表單示意圖:設(shè)計(jì)“標(biāo)簽”控件表單

表單示意圖:標(biāo)簽標(biāo)簽標(biāo)簽設(shè)計(jì)“計(jì)時器”控件表單

表單示意圖:計(jì)時器設(shè)計(jì)“命令按鈕”控件表單

表單示意圖:命令按鈕命令按鈕設(shè)計(jì)“文本框”控件表單

溫馨提示

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

評論

0/150

提交評論