版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
4.2面向?qū)ο蟪绦蛟O(shè)計(jì)和可視化設(shè)計(jì)工具使用1VisualFoxPro4.2面向?qū)ο蟪绦蛟O(shè)計(jì)和可視化設(shè)計(jì)工具使用1VisualF本節(jié)要求1.目的、要求
(1)掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念:類(lèi)、對(duì)象、事件、方法、屬性(2)了解面向?qū)ο蟪绦蛟O(shè)計(jì)思想(3)了解面向?qū)ο蟪绦蛟O(shè)計(jì)的設(shè)計(jì)方法2.重點(diǎn)、難點(diǎn)重點(diǎn):面向?qū)ο蟪绦蛟O(shè)計(jì)基本概念的理解。難點(diǎn):面向?qū)ο蟪绦蛟O(shè)計(jì)的設(shè)計(jì)方法???/p>
學(xué)
時(shí):理論(2學(xué)時(shí))2VisualFoxPro本節(jié)要求1.目的、要求2.重點(diǎn)、難點(diǎn)總學(xué)時(shí):理論(24.2面向?qū)ο蟪绦蛟O(shè)計(jì)和可視化設(shè)計(jì)工具使用面向過(guò)程程序設(shè)計(jì):就是前面所介紹的結(jié)構(gòu)化程序設(shè)計(jì),結(jié)構(gòu)化程序設(shè)計(jì)強(qiáng)調(diào)了功能抽象和模塊性,它將解決問(wèn)題的過(guò)程看作是一個(gè)處理過(guò)程。數(shù)據(jù)和施加于數(shù)據(jù)上的操作是分別設(shè)計(jì)的,以對(duì)數(shù)據(jù)進(jìn)行操作的過(guò)程作為程序的主體。4.2.1面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想與VFP的實(shí)現(xiàn)方法1.面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想3VisualFoxPro4.2面向?qū)ο蟪绦蛟O(shè)計(jì)和可視化設(shè)計(jì)工具使用面向過(guò)程程序設(shè)面向?qū)ο蟪绦蛟O(shè)計(jì):將數(shù)據(jù)及對(duì)數(shù)據(jù)的操作放在一起,作為一個(gè)相互依存,不可分割的整體來(lái)處理,它將對(duì)象及對(duì)對(duì)象的操作抽象成對(duì)象屬性和對(duì)象方法,這些對(duì)象的屬性就是要處理的數(shù)據(jù),而對(duì)象的方法就是對(duì)這些數(shù)據(jù)進(jìn)行操作,面向?qū)ο蟪绦蛟O(shè)計(jì)就是通過(guò)對(duì)對(duì)象屬性方法的設(shè)置,達(dá)到對(duì)對(duì)象操作的目的?;靖拍睿簩?duì)象、類(lèi)、子類(lèi)、繼承、屬性、方法、事件等。面向?qū)ο蟪绦蛟O(shè)計(jì):ObjectOrientedProgramming簡(jiǎn)稱(chēng)為OOP(1)對(duì)象(Object)對(duì)象(Object):是組成程序的構(gòu)件。作為程序構(gòu)件的“對(duì)象”是對(duì)現(xiàn)實(shí)世界中一個(gè)實(shí)體的一種模擬工具。例如:一個(gè)人,一個(gè)命令按鈕等都是對(duì)象。4VisualFoxPro面向?qū)ο蟪绦蛟O(shè)計(jì):將數(shù)據(jù)及對(duì)數(shù)據(jù)的操作放在一起,作為一個(gè)相互對(duì)象是反映客觀事物屬性及行為特征的描述。每個(gè)對(duì)象都具有描述它的特征的屬性,及附屬于它的行為。一個(gè)人有姓名、性別、出生年月,命令按鈕有高度、寬度、顏色等。每個(gè)對(duì)象有自己的行為:如人可以站立、行走,命令按鈕可以單擊、雙擊等。(2)屬性(ATTRIBUTE)屬性:是對(duì)象的一組特征數(shù)據(jù)。①每個(gè)對(duì)象都有多個(gè)屬性來(lái)描述,不同的對(duì)象可以有相同的屬性,但必須有不同的屬性值來(lái)區(qū)分他們。例如:一個(gè)人有姓名、年齡、身高、體重等屬性,對(duì)象張三和對(duì)象李四具有相同的屬性,但他們有不同的屬性值,至少一個(gè)姓名屬性值為“張三”,另一個(gè)為“李四”。5VisualFoxPro對(duì)象是反映客觀事物屬性及行為特征的描述。每個(gè)對(duì)象都具有描述它②在VisualFoxPro中,一個(gè)對(duì)象的屬性就是該對(duì)象的一項(xiàng)數(shù)據(jù)特性。例如:一個(gè)標(biāo)簽對(duì)象Label1,有字體(FontSize)、標(biāo)題(Caption)、字體大?。‵ontSize)等屬性,同樣,不同的標(biāo)簽對(duì)象間,必定有不同的屬性值來(lái)區(qū)分它們。(3)事件(Event)與方法(Means)①事件:事件是對(duì)象可能作出的行為或動(dòng)作,屬于對(duì)象的靜態(tài)特征。它是預(yù)先定義好的動(dòng)作,通過(guò)用戶的操作或系統(tǒng)來(lái)引發(fā),事件是通過(guò)用戶的交互操作產(chǎn)生的。在VFP統(tǒng)中,對(duì)象可以響應(yīng)50多種事件。例如:一個(gè)人的坐、立、走都是人可以作出的動(dòng)作。如命令按鈕的事件,系統(tǒng)規(guī)定了包括了單擊(click)、右鍵單擊(rightclick)等。6VisualFoxPro②在VisualFoxPro中,一個(gè)對(duì)象的屬性就是該對(duì)象②方法:對(duì)象的方法是對(duì)于對(duì)象行為的描述。VFP中每個(gè)對(duì)象都可以有若干個(gè)方法,相同類(lèi)型的對(duì)象具有相同的方法,不同類(lèi)型的對(duì)象也可以具有相同的方法。③事件與方法的區(qū)別和聯(lián)系*事件和方法是兩個(gè)不同的概念。事件:是預(yù)先定義好的動(dòng)作,是由用戶或系統(tǒng)引發(fā)的,是先有用戶的操作,然后才有事件的發(fā)生;方法:方法可以看作是對(duì)象具有的行為能力,它是對(duì)象用來(lái)實(shí)現(xiàn)某一任務(wù)的途徑。例如:在對(duì)象上單擊鼠標(biāo)會(huì)執(zhí)行一個(gè)相應(yīng)的命令或一段相應(yīng)的程序,則有這個(gè)命令或這段程序就是這個(gè)對(duì)象的方法。7VisualFoxPro②方法:對(duì)象的方法是對(duì)于對(duì)象行為的描述。VFP中每個(gè)對(duì)象都正常情況下,激活一個(gè)事件,將執(zhí)行相應(yīng)的方法。如果這個(gè)事件沒(méi)有事先定義,則不可能發(fā)生這個(gè)事件;如果定義了事件,而事件的方法沒(méi)有事先設(shè)置,則對(duì)對(duì)象發(fā)生事件時(shí)不會(huì)有任何反映。方法靠事件進(jìn)行引發(fā),所以二者是相互依賴(lài),相輔相成的。例如:乘客登上飛機(jī),觸發(fā)了一個(gè)“登機(jī)”的事件;飛機(jī)在飛行,是飛機(jī)這個(gè)對(duì)象,在執(zhí)行“飛行”這個(gè)方法,飛機(jī)具有飛行的能力。所以“登機(jī)”是一個(gè)事件,而“飛行”則是方法。*事件與方法緊密聯(lián)系8VisualFoxPro正常情況下,激活一個(gè)事件,將執(zhí)行相應(yīng)的方法。*事件與方法緊密①類(lèi)的定義“類(lèi)”:是具有相同屬性特征和行為規(guī)則的多個(gè)“對(duì)象”的一種統(tǒng)一描述。類(lèi)就是對(duì)一類(lèi)相似對(duì)象的屬性和行為特征的抽象描述?;蛘哒f(shuō),類(lèi)是具有共同屬性、共同操作性質(zhì)的對(duì)象的集合。在VFP系統(tǒng)中,類(lèi)就像是一個(gè)模板,對(duì)象都是由類(lèi)生成的,類(lèi)定義了對(duì)象所有的屬性、事件和方法,從而決定了對(duì)象的屬性和它的行為。VFP系統(tǒng)為用戶提供29個(gè)基類(lèi)。對(duì)于一個(gè)學(xué)校的全體學(xué)生,描述其特征的數(shù)據(jù)模式是相同的。行為規(guī)則有不同的地方,也有相同的地方。但如果將行為的選擇加以一些限制,將引起學(xué)生反映的外部事件歸納為:(4)類(lèi)(Class)9VisualFoxPro①類(lèi)的定義(4)類(lèi)(Class)9VisualFoxP*
當(dāng)一個(gè)學(xué)年度不及格科目超過(guò)學(xué)校規(guī)定時(shí),這一部分學(xué)生應(yīng)該留級(jí)或受到警示。*
完成規(guī)定科目的學(xué)習(xí)并考試合格者,學(xué)生的整體反映是畢業(yè)離校。一般管理信息系統(tǒng)中,系統(tǒng)的使用者和設(shè)計(jì)者所關(guān)心的問(wèn)題正是這樣一些共性問(wèn)題而并非一些很個(gè)體的問(wèn)題,設(shè)計(jì)者對(duì)個(gè)體的行為進(jìn)行分析、歸納、抽象,形成整個(gè)群體的共同行為規(guī)范,并把這種共同的行為規(guī)范用程序設(shè)計(jì)語(yǔ)言描述成程序過(guò)程,和描述該群體的特征數(shù)據(jù)模式一起進(jìn)行封裝,這樣就完成了OOP方法中一個(gè)“類(lèi)”的設(shè)計(jì)。*一個(gè)新學(xué)年度到來(lái)時(shí),學(xué)生的整體反映應(yīng)該是繳費(fèi)報(bào)到。10VisualFoxPro*當(dāng)一個(gè)學(xué)年度不及格科目超過(guò)學(xué)校規(guī)定時(shí),這一部分學(xué)生應(yīng)該類(lèi):是一個(gè)數(shù)據(jù)模式和若干個(gè)程序過(guò)程(稱(chēng)為“方法程序”、一般一種行為用一個(gè)程序過(guò)程描述)經(jīng)封裝而形成的一個(gè)整體,它是使用信息技術(shù)對(duì)現(xiàn)實(shí)世界的一種模擬與抽象。對(duì)象:則是“類(lèi)”的一個(gè)實(shí)例。用程序設(shè)計(jì)語(yǔ)言來(lái)說(shuō),“對(duì)象”可以不精確的理解為對(duì)一個(gè)“類(lèi)”賦值的結(jié)果?!皩?duì)象”是OOP方法中組成程序的一種構(gòu)件??傊瑥某绦蛟O(shè)計(jì)者的角度觀察:②類(lèi)的特性類(lèi)具有多態(tài)性、封裝性、抽象性、繼承性等特性。*多態(tài)性:多態(tài)性主要是指允許相關(guān)的對(duì)象對(duì)同一消息做出不同的反應(yīng)。11VisualFoxPro類(lèi):是一個(gè)數(shù)據(jù)模式和若干個(gè)程序過(guò)程(稱(chēng)為“方法程序”、一般一*封裝性:是指類(lèi)的內(nèi)部信息對(duì)用戶是隱蔽的。由于類(lèi)具有封裝性,因此不必被類(lèi)的概念或類(lèi)的抽象所困擾。在使用類(lèi)時(shí),用戶不需熟悉對(duì)象內(nèi)部的復(fù)雜性,只需掌握類(lèi)的使用方法。例如:使用照相機(jī)照相時(shí),無(wú)需了解照相機(jī)是怎樣設(shè)計(jì)的和內(nèi)部構(gòu)造,只要會(huì)使用即可。類(lèi)的封裝性使應(yīng)用程序的可用性大大提高了。*抽象性:允許用戶忽略實(shí)施細(xì)節(jié),從更高的等級(jí)上考慮一個(gè)實(shí)體。繼承性:指通過(guò)繼承關(guān)系利用已有的類(lèi)構(gòu)造新類(lèi)。任何一個(gè)基類(lèi)都有它的屬性。即使用戶沒(méi)有定義,VFP系統(tǒng)也賦給基類(lèi)相應(yīng)的缺省值。*繼承性(Inheritance)12VisualFoxPro*封裝性:是指類(lèi)的內(nèi)部信息對(duì)用戶是隱蔽的。由于類(lèi)具有封裝●對(duì)象能自動(dòng)繼承創(chuàng)建它的類(lèi)的功能?!?/p>
子類(lèi)能自動(dòng)繼承父類(lèi)的功能。●
對(duì)一個(gè)類(lèi)的改動(dòng)能反映到它的所有子類(lèi)中。2.VFP面向?qū)ο笏枷氲膶?shí)現(xiàn)方法VFP提供的設(shè)計(jì)器表單設(shè)計(jì)器菜單設(shè)計(jì)器報(bào)表設(shè)計(jì)器(1)VFP基類(lèi)在VFP中,為了實(shí)現(xiàn)面向?qū)ο蟮某绦蛟O(shè)計(jì)或創(chuàng)建應(yīng)用程序,系統(tǒng)提供了可以使用的基本類(lèi),即VFP基類(lèi)。這個(gè)基類(lèi)是系統(tǒng)本身內(nèi)含的,不存于某個(gè)類(lèi)庫(kù)中。用戶可以基于基類(lèi)生成所需的對(duì)象,也可以創(chuàng)建自己的類(lèi)。217頁(yè)表4.7給出了VFP基類(lèi)列表。13VisualFoxPro●對(duì)象能自動(dòng)繼承創(chuàng)建它的類(lèi)的功能?!褡宇?lèi)能自動(dòng)繼承父類(lèi)的VFP中的基類(lèi)容器類(lèi)控件類(lèi)每一個(gè)基類(lèi)對(duì)應(yīng)表單控件工具欄上的一個(gè)圖形按鈕:每一個(gè)VFP基類(lèi)都有自己的一套屬性、方法和事件。①容器類(lèi)容器類(lèi)可以包含其他對(duì)象,并且允許訪問(wèn)這些對(duì)象。例如:若創(chuàng)建一個(gè)含有兩個(gè)命令按鈕的容器類(lèi),而后將該類(lèi)的一個(gè)對(duì)象加入表單中,那么無(wú)論在設(shè)計(jì)時(shí)刻還是在運(yùn)行時(shí)刻,都可以對(duì)該容器中任何一個(gè)對(duì)象進(jìn)行單獨(dú)操作。14VisualFoxProVFP中的基類(lèi)容器類(lèi)每一個(gè)基類(lèi)對(duì)應(yīng)表單控件工具欄上的一個(gè)圖形不僅可以改變命令按鈕的位置、標(biāo)題,也可以在設(shè)計(jì)階段給這個(gè)容器添加新對(duì)象。②控件類(lèi)控件類(lèi)的封裝比容器類(lèi)更為嚴(yán)密,但也因此喪失了一些靈活性。他不能包含其他對(duì)象。最典型的控件類(lèi)就是命令按鈕、文本。文本自身是一個(gè)對(duì)象,在文本中不可放其它對(duì)象。容器類(lèi)雖然在引用時(shí)可以視為一個(gè)整體,但無(wú)論是在設(shè)計(jì)階段還是在運(yùn)行階段,其所包含的對(duì)象都是可識(shí)別并可以單獨(dú)操作的。由控件類(lèi)創(chuàng)造的對(duì)象,使用和修改需經(jīng)容器進(jìn)行引用。15VisualFoxPro不僅可以改變命令按鈕的位置、標(biāo)題,也可以在設(shè)計(jì)階段給這個(gè)容器VFP中的對(duì)象容器對(duì)象控件對(duì)象(2)VFP對(duì)象VFP的對(duì)象由基類(lèi)生成,VFP給出的各種控件工具欄提供了可以生成對(duì)象的按鈕,當(dāng)選擇一個(gè)按鈕在表單上單擊或拖動(dòng)畫(huà)出一個(gè)控件時(shí),即生成了一個(gè)對(duì)象。①容器與控件控件:是一個(gè)以圖表化方式顯示出來(lái)并能與用戶進(jìn)行交互的對(duì)象??丶ǔ1环胖糜谝粋€(gè)容器里。他不能包含其他對(duì)象。最典型的控件就是命令按鈕、文本。文本自身是一個(gè)對(duì)象,在文本中不可放其它對(duì)象。容器:是一種特殊控件,是可以包含其它對(duì)象的對(duì)象。書(shū)218頁(yè)表4.9列出了VFP中常用的容器及其所能包容的對(duì)象。16VisualFoxProVFP中的對(duì)象容器對(duì)象(2)VFP對(duì)象VFP的對(duì)象由基類(lèi)生表單容器對(duì)象及所包容的對(duì)象情況命令按鈕標(biāo)簽組合框文本框列表框表單控件工具欄頁(yè)框容器對(duì)象控件對(duì)象17VisualFoxPro表單容器對(duì)象及所包容的對(duì)象情況命令按鈕標(biāo)簽組合框文本框列表框②對(duì)象的引用在面向程序設(shè)計(jì)中,首先要明確下面幾個(gè)問(wèn)題:容器中的對(duì)象仍然可以是一個(gè)容器,一般把一個(gè)“對(duì)象”的直接容器稱(chēng)為“父容器”,在調(diào)用特定的對(duì)象時(shí),搞清該對(duì)象的“父容器”是至關(guān)重要的,不能把一個(gè)對(duì)象的間接容器錯(cuò)誤地視為其“父容器”。*容器中對(duì)象的層次*對(duì)象使用局域名每個(gè)對(duì)象都有一個(gè)名字。在給對(duì)象命名時(shí),只要保證同一個(gè)“父容器”下的各對(duì)象不重名即可,換句話說(shuō),對(duì)象使用的是局域名,因此不能單獨(dú)使用對(duì)象名來(lái)調(diào)用對(duì)象,18VisualFoxPro②對(duì)象的引用在面向程序設(shè)計(jì)中,首先要明確下面幾個(gè)問(wèn)題:容器書(shū)219頁(yè)圖4-25中的用對(duì)象的名稱(chēng):表單:Form1頁(yè)框:pageframe1
頁(yè)名——page1,page2,page3標(biāo)簽:lable1,lable2,lable3,lable4組合框:combo1,combo2文本框:text1,text1列表框:list1,list2命令按鈕:command1,command2以上是系統(tǒng)默認(rèn)的名稱(chēng),用戶可以修改,例如:form1修改為“字體對(duì)話框”,page1—字體,lable1—中文字體,等等。19VisualFoxPro書(shū)219頁(yè)圖4-25中的用對(duì)象的名稱(chēng):表單:Form119V<表單集>.<表單名>.<容器名1>.<容器名2><對(duì)象名>以上格式所表示的是<對(duì)象名>中的對(duì)象,不是前面的部分,其間用小數(shù)點(diǎn)分隔。如果某個(gè)對(duì)象直接放在表單上,則引用時(shí)不應(yīng)再寫(xiě)容器名。*對(duì)象引用方式*對(duì)象引用中的關(guān)鍵字及含義(見(jiàn)書(shū)220頁(yè)表4-10)This:表示當(dāng)前對(duì)象Parent:表示當(dāng)前對(duì)象的直接“父容器”ThisForm:表示包含當(dāng)前對(duì)象的表單ThisFormSet:表示包含當(dāng)前對(duì)象的表單所屬的表單集例如在圖4-25中:命令按鈕1的引用:mand1Text1引用:thisfrom.pagefrane1.page1.text120VisualFoxPro<表單集>.<表單名>.<容器名1>.<容器名2>①屬性窗口打開(kāi)屬性窗口的方法:(3)VFP對(duì)象的屬性*顯示菜單/屬性*右擊表單空白處,快捷菜單/屬性對(duì)象組合框選項(xiàng)卡屬性設(shè)置框?qū)傩粤斜砜驅(qū)傩哉f(shuō)明信息屬性窗口各部分功能:對(duì)象組合框——下拉列表中顯示當(dāng)前表單、表單集及全部控件對(duì)象的列表。選擇任意對(duì)象,將在屬性列表框中列出有關(guān)這個(gè)對(duì)象的所有屬性、事件和方法程序供選擇設(shè)置。選項(xiàng)卡——包含5個(gè)選項(xiàng)卡,分別用來(lái)顯示對(duì)象的屬性、事件、方法程序等,各選項(xiàng)按字母順序排列。21VisualFoxPro①屬性窗口(3)VFP對(duì)象的屬性*顯示菜單/屬性對(duì)象組合【全部】:列出對(duì)象的所有屬性、事件、方法程序【數(shù)據(jù)】:列出所有顯示或操縱的數(shù)據(jù)屬性【方法程序】:對(duì)象的方法程序與事件,帶有EVENT的是事件,其余為方法程序?!静季帧浚簩?duì)象的位置、大小、顏色、字體等屬性?!酒渌浚侯?lèi)信息和用戶自定義屬性等。注意:不同的對(duì)象,有不同的屬性值。屬性設(shè)置框——用于更改屬性值的文本框或組合框,左邊的三個(gè)按鈕“×”、“√”、“fx”可以取消和設(shè)置以及調(diào)用函數(shù)。屬性列表——給出在對(duì)象組合框選定的對(duì)象按選定選項(xiàng)卡分類(lèi)后的各種屬性,包括屬性名和當(dāng)前屬性值。如果選中某個(gè)屬性,其值會(huì)在屬性設(shè)置框中出現(xiàn),以供修改。22VisualFoxPro【全部】:列出對(duì)象的所有屬性、事件、方法程序【數(shù)據(jù)】:列出所屬性說(shuō)明信息——顯示在屬性列表中被選擇屬性的含義。②常用屬性介紹不同的對(duì)象有不同的屬性,有些對(duì)象屬性有上百個(gè),有些屬性只是在特別需要時(shí)才用到,而有些屬性經(jīng)常用到,而且很多對(duì)象具有一些相同的屬性。書(shū)面221頁(yè)表4-12給出了一些常用或通用的屬性。③引用對(duì)象屬性格式:<對(duì)象引用>.<對(duì)象屬性>例如:圖4-25中,表單標(biāo)題為“字體對(duì)話框”,表示如下:Thisform.coption=“字體對(duì)話框”將文本框text1輸入的值存入變量ww中,代碼為:ww=thisform.pagefrane1.page1.text1.value對(duì)象的引用對(duì)象的屬性23VisualFoxPro屬性說(shuō)明信息——顯示在屬性列表中被選擇屬性的含義。②常用屬(1)Caption屬性——標(biāo)題屬性指定對(duì)象標(biāo)題中顯示的文本。(2)Name屬性指定在代碼中引用對(duì)象時(shí)所用的名稱(chēng)。(3)AutoSize屬性——控件是否根據(jù)正文自動(dòng)調(diào)整大小.T.——真:自動(dòng)調(diào)整大小.F.——假(默認(rèn)):保持原來(lái)設(shè)計(jì)時(shí)大小。正文太長(zhǎng),則自動(dòng)裁剪掉。(4)Heigh屬性——指定對(duì)象在屏幕上的高度(5)Top屬性控件:指定相對(duì)父對(duì)象最頂端的所在的位置表單對(duì)象:確定表單頂部邊緣與VFP主窗口間距離VFP中的常用屬性24VisualFoxPro(1)Caption屬性——標(biāo)題屬性VFP中的常用屬性24控件:相對(duì)父對(duì)象的左邊界距離表單:表單左邊界與VFP主窗口左邊界的距離(8)Enabled屬性——指定控件是否可用.T.——真:可用.F.——假:不可用,呈暗淡色,禁止用戶操作(9)Visible屬性——指定控件是否可見(jiàn).T.——真:可見(jiàn).F.——假:不可見(jiàn),但控件本身存在(10)FontName屬性——指定對(duì)象顯示文本的字體名(11)FontSize屬性——指定對(duì)象文本字體大小(7)Left屬性25VisualFoxPro控件:相對(duì)父對(duì)象的左邊界距離(7)Left屬性25VisuFontBold——是否為粗體FontItalic——是否斜體FontStrikethru——是否加一條刪除線FontUnderline——是否帶下劃線(13)ForeColor屬性——設(shè)置正文顏色(14)BackColor屬性——設(shè)置背景顏色(15)BackStyle屬性——設(shè)置背景風(fēng)格透明:控件背景顏色不顯示不透明:控件設(shè)置背景顏色(12)指定文本效果屬性26VisualFoxProFontBold——是否為粗體(12)指定文本效果屬性26無(wú):控件周?chē)鸁o(wú)邊框固定單線:控件帶有邊框(17)Alignment屬性——標(biāo)簽、文本框、復(fù)選框中正文對(duì)齊方式。不同控件默認(rèn)值不同。左:左對(duì)齊右:右對(duì)齊中間:正文居中(18)WordWrap屬性——AutoSize屬性為.T.時(shí)有效。.T.——真:垂直方向上改變區(qū)域大小,水平不變化。.F.——假:水平方向按正文的長(zhǎng)度放大和縮小區(qū)域;在垂直方向以字體大小放大和縮小區(qū)域。(16)BordeStyle屬性——設(shè)置邊框風(fēng)格27VisualFoxPro無(wú):控件周?chē)鸁o(wú)邊框(16)BordeStyle屬性——設(shè)置(20)Picture屬性——指定控件中顯示的位圖、圖標(biāo)文件或通用字段。(21)TabIndes屬性——指定頁(yè)面上控件的【Tab】健的次序。(22)TabStop屬性——用戶是否可以使用【Tab】健把焦點(diǎn)移到對(duì)象上。(23)SpecialEffect屬性——形狀控件的不同樣式選項(xiàng)(24)Value屬性——指定控件的當(dāng)前取值。(19)Style屬性——指定控件的樣式28VisualFoxPro(20)Picture屬性——指定控件中顯示的位圖、圖標(biāo)文(4)VFP事件①事件驅(qū)動(dòng)方式面向?qū)ο蟪绦蛟O(shè)計(jì)的特點(diǎn)就是所有的操作都靠事件驅(qū)動(dòng),這些事件都是由系統(tǒng)預(yù)先定義,由系統(tǒng)或用戶觸發(fā),一旦觸發(fā)某個(gè)事件,系統(tǒng)就會(huì)轉(zhuǎn)去執(zhí)行與該事件對(duì)應(yīng)的方法程序代碼,完成某種操作。事件處理完畢后,系統(tǒng)繼續(xù)待下一個(gè)事件的發(fā)生。②常見(jiàn)事件介紹——見(jiàn)書(shū)223頁(yè)表4-13有時(shí)需要給對(duì)象添加新的屬性,方法是,在菜單欄中,選擇“表單”菜單中“新建屬性”選項(xiàng),在對(duì)話框中,指定要添加的屬性名稱(chēng),并單擊“添加”按鈕,就完成的新屬性的添加工作,往后就可以如前面說(shuō)明的一樣設(shè)置該屬性了。②創(chuàng)建新屬性29VisualFoxPro(4)VFP事件有時(shí)需要給對(duì)象添加新的屬性,方法是,在事件:預(yù)先設(shè)定好的特定動(dòng)作。由用戶系統(tǒng)來(lái)激活。但用戶不能創(chuàng)建新事件。例1:表單中的按鈕對(duì)象對(duì)于鼠標(biāo)Click(單擊)事件的響應(yīng)。(例11-6)
表單設(shè)計(jì),在表單中加入一個(gè)標(biāo)簽、一個(gè)按鈕。(2)編寫(xiě)程序代碼——進(jìn)入代碼窗口的三種方法雙擊對(duì)象顯示/代碼右擊對(duì)象——快捷菜單/代碼command1的Click事件代碼:ThisForm.Label1.Caption="我單擊了一下按鈕!"(4)運(yùn)行表單30VisualFoxPro事件:預(yù)先設(shè)定好的特定動(dòng)作。由用戶系統(tǒng)來(lái)激活。但用戶不能創(chuàng)建格式:<對(duì)象引用>.<方法程序>(5)VFP方法程序例2:調(diào)用對(duì)象方法示例(例11-5)
Command1按鈕的Click事件代碼:Thisform.cls&&清除表單上的圖形Thisform.line(12,34,150,100)&&調(diào)用Line方法繪制直線Command2按鈕的Click事件代碼:Thisform.clsThisform.box(20,20,100,60)&&調(diào)用Box方法繪制矩形Command3按鈕的Click事件代碼:Thisform.release&&調(diào)用release方法釋放表單31VisualFoxPro格式:(5)VFP方法程序例2:調(diào)用對(duì)象方法示例(例11-4.2面向?qū)ο蟪绦蛟O(shè)計(jì)和可視化設(shè)計(jì)工具使用32VisualFoxPro4.2面向?qū)ο蟪绦蛟O(shè)計(jì)和可視化設(shè)計(jì)工具使用1VisualF本節(jié)要求1.目的、要求
(1)掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念:類(lèi)、對(duì)象、事件、方法、屬性(2)了解面向?qū)ο蟪绦蛟O(shè)計(jì)思想(3)了解面向?qū)ο蟪绦蛟O(shè)計(jì)的設(shè)計(jì)方法2.重點(diǎn)、難點(diǎn)重點(diǎn):面向?qū)ο蟪绦蛟O(shè)計(jì)基本概念的理解。難點(diǎn):面向?qū)ο蟪绦蛟O(shè)計(jì)的設(shè)計(jì)方法???/p>
學(xué)
時(shí):理論(2學(xué)時(shí))33VisualFoxPro本節(jié)要求1.目的、要求2.重點(diǎn)、難點(diǎn)總學(xué)時(shí):理論(24.2面向?qū)ο蟪绦蛟O(shè)計(jì)和可視化設(shè)計(jì)工具使用面向過(guò)程程序設(shè)計(jì):就是前面所介紹的結(jié)構(gòu)化程序設(shè)計(jì),結(jié)構(gòu)化程序設(shè)計(jì)強(qiáng)調(diào)了功能抽象和模塊性,它將解決問(wèn)題的過(guò)程看作是一個(gè)處理過(guò)程。數(shù)據(jù)和施加于數(shù)據(jù)上的操作是分別設(shè)計(jì)的,以對(duì)數(shù)據(jù)進(jìn)行操作的過(guò)程作為程序的主體。4.2.1面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想與VFP的實(shí)現(xiàn)方法1.面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想34VisualFoxPro4.2面向?qū)ο蟪绦蛟O(shè)計(jì)和可視化設(shè)計(jì)工具使用面向過(guò)程程序設(shè)面向?qū)ο蟪绦蛟O(shè)計(jì):將數(shù)據(jù)及對(duì)數(shù)據(jù)的操作放在一起,作為一個(gè)相互依存,不可分割的整體來(lái)處理,它將對(duì)象及對(duì)對(duì)象的操作抽象成對(duì)象屬性和對(duì)象方法,這些對(duì)象的屬性就是要處理的數(shù)據(jù),而對(duì)象的方法就是對(duì)這些數(shù)據(jù)進(jìn)行操作,面向?qū)ο蟪绦蛟O(shè)計(jì)就是通過(guò)對(duì)對(duì)象屬性方法的設(shè)置,達(dá)到對(duì)對(duì)象操作的目的。基本概念:對(duì)象、類(lèi)、子類(lèi)、繼承、屬性、方法、事件等。面向?qū)ο蟪绦蛟O(shè)計(jì):ObjectOrientedProgramming簡(jiǎn)稱(chēng)為OOP(1)對(duì)象(Object)對(duì)象(Object):是組成程序的構(gòu)件。作為程序構(gòu)件的“對(duì)象”是對(duì)現(xiàn)實(shí)世界中一個(gè)實(shí)體的一種模擬工具。例如:一個(gè)人,一個(gè)命令按鈕等都是對(duì)象。35VisualFoxPro面向?qū)ο蟪绦蛟O(shè)計(jì):將數(shù)據(jù)及對(duì)數(shù)據(jù)的操作放在一起,作為一個(gè)相互對(duì)象是反映客觀事物屬性及行為特征的描述。每個(gè)對(duì)象都具有描述它的特征的屬性,及附屬于它的行為。一個(gè)人有姓名、性別、出生年月,命令按鈕有高度、寬度、顏色等。每個(gè)對(duì)象有自己的行為:如人可以站立、行走,命令按鈕可以單擊、雙擊等。(2)屬性(ATTRIBUTE)屬性:是對(duì)象的一組特征數(shù)據(jù)。①每個(gè)對(duì)象都有多個(gè)屬性來(lái)描述,不同的對(duì)象可以有相同的屬性,但必須有不同的屬性值來(lái)區(qū)分他們。例如:一個(gè)人有姓名、年齡、身高、體重等屬性,對(duì)象張三和對(duì)象李四具有相同的屬性,但他們有不同的屬性值,至少一個(gè)姓名屬性值為“張三”,另一個(gè)為“李四”。36VisualFoxPro對(duì)象是反映客觀事物屬性及行為特征的描述。每個(gè)對(duì)象都具有描述它②在VisualFoxPro中,一個(gè)對(duì)象的屬性就是該對(duì)象的一項(xiàng)數(shù)據(jù)特性。例如:一個(gè)標(biāo)簽對(duì)象Label1,有字體(FontSize)、標(biāo)題(Caption)、字體大小(FontSize)等屬性,同樣,不同的標(biāo)簽對(duì)象間,必定有不同的屬性值來(lái)區(qū)分它們。(3)事件(Event)與方法(Means)①事件:事件是對(duì)象可能作出的行為或動(dòng)作,屬于對(duì)象的靜態(tài)特征。它是預(yù)先定義好的動(dòng)作,通過(guò)用戶的操作或系統(tǒng)來(lái)引發(fā),事件是通過(guò)用戶的交互操作產(chǎn)生的。在VFP統(tǒng)中,對(duì)象可以響應(yīng)50多種事件。例如:一個(gè)人的坐、立、走都是人可以作出的動(dòng)作。如命令按鈕的事件,系統(tǒng)規(guī)定了包括了單擊(click)、右鍵單擊(rightclick)等。37VisualFoxPro②在VisualFoxPro中,一個(gè)對(duì)象的屬性就是該對(duì)象②方法:對(duì)象的方法是對(duì)于對(duì)象行為的描述。VFP中每個(gè)對(duì)象都可以有若干個(gè)方法,相同類(lèi)型的對(duì)象具有相同的方法,不同類(lèi)型的對(duì)象也可以具有相同的方法。③事件與方法的區(qū)別和聯(lián)系*事件和方法是兩個(gè)不同的概念。事件:是預(yù)先定義好的動(dòng)作,是由用戶或系統(tǒng)引發(fā)的,是先有用戶的操作,然后才有事件的發(fā)生;方法:方法可以看作是對(duì)象具有的行為能力,它是對(duì)象用來(lái)實(shí)現(xiàn)某一任務(wù)的途徑。例如:在對(duì)象上單擊鼠標(biāo)會(huì)執(zhí)行一個(gè)相應(yīng)的命令或一段相應(yīng)的程序,則有這個(gè)命令或這段程序就是這個(gè)對(duì)象的方法。38VisualFoxPro②方法:對(duì)象的方法是對(duì)于對(duì)象行為的描述。VFP中每個(gè)對(duì)象都正常情況下,激活一個(gè)事件,將執(zhí)行相應(yīng)的方法。如果這個(gè)事件沒(méi)有事先定義,則不可能發(fā)生這個(gè)事件;如果定義了事件,而事件的方法沒(méi)有事先設(shè)置,則對(duì)對(duì)象發(fā)生事件時(shí)不會(huì)有任何反映。方法靠事件進(jìn)行引發(fā),所以二者是相互依賴(lài),相輔相成的。例如:乘客登上飛機(jī),觸發(fā)了一個(gè)“登機(jī)”的事件;飛機(jī)在飛行,是飛機(jī)這個(gè)對(duì)象,在執(zhí)行“飛行”這個(gè)方法,飛機(jī)具有飛行的能力。所以“登機(jī)”是一個(gè)事件,而“飛行”則是方法。*事件與方法緊密聯(lián)系39VisualFoxPro正常情況下,激活一個(gè)事件,將執(zhí)行相應(yīng)的方法。*事件與方法緊密①類(lèi)的定義“類(lèi)”:是具有相同屬性特征和行為規(guī)則的多個(gè)“對(duì)象”的一種統(tǒng)一描述。類(lèi)就是對(duì)一類(lèi)相似對(duì)象的屬性和行為特征的抽象描述?;蛘哒f(shuō),類(lèi)是具有共同屬性、共同操作性質(zhì)的對(duì)象的集合。在VFP系統(tǒng)中,類(lèi)就像是一個(gè)模板,對(duì)象都是由類(lèi)生成的,類(lèi)定義了對(duì)象所有的屬性、事件和方法,從而決定了對(duì)象的屬性和它的行為。VFP系統(tǒng)為用戶提供29個(gè)基類(lèi)。對(duì)于一個(gè)學(xué)校的全體學(xué)生,描述其特征的數(shù)據(jù)模式是相同的。行為規(guī)則有不同的地方,也有相同的地方。但如果將行為的選擇加以一些限制,將引起學(xué)生反映的外部事件歸納為:(4)類(lèi)(Class)40VisualFoxPro①類(lèi)的定義(4)類(lèi)(Class)9VisualFoxP*
當(dāng)一個(gè)學(xué)年度不及格科目超過(guò)學(xué)校規(guī)定時(shí),這一部分學(xué)生應(yīng)該留級(jí)或受到警示。*
完成規(guī)定科目的學(xué)習(xí)并考試合格者,學(xué)生的整體反映是畢業(yè)離校。一般管理信息系統(tǒng)中,系統(tǒng)的使用者和設(shè)計(jì)者所關(guān)心的問(wèn)題正是這樣一些共性問(wèn)題而并非一些很個(gè)體的問(wèn)題,設(shè)計(jì)者對(duì)個(gè)體的行為進(jìn)行分析、歸納、抽象,形成整個(gè)群體的共同行為規(guī)范,并把這種共同的行為規(guī)范用程序設(shè)計(jì)語(yǔ)言描述成程序過(guò)程,和描述該群體的特征數(shù)據(jù)模式一起進(jìn)行封裝,這樣就完成了OOP方法中一個(gè)“類(lèi)”的設(shè)計(jì)。*一個(gè)新學(xué)年度到來(lái)時(shí),學(xué)生的整體反映應(yīng)該是繳費(fèi)報(bào)到。41VisualFoxPro*當(dāng)一個(gè)學(xué)年度不及格科目超過(guò)學(xué)校規(guī)定時(shí),這一部分學(xué)生應(yīng)該類(lèi):是一個(gè)數(shù)據(jù)模式和若干個(gè)程序過(guò)程(稱(chēng)為“方法程序”、一般一種行為用一個(gè)程序過(guò)程描述)經(jīng)封裝而形成的一個(gè)整體,它是使用信息技術(shù)對(duì)現(xiàn)實(shí)世界的一種模擬與抽象。對(duì)象:則是“類(lèi)”的一個(gè)實(shí)例。用程序設(shè)計(jì)語(yǔ)言來(lái)說(shuō),“對(duì)象”可以不精確的理解為對(duì)一個(gè)“類(lèi)”賦值的結(jié)果?!皩?duì)象”是OOP方法中組成程序的一種構(gòu)件。總之,從程序設(shè)計(jì)者的角度觀察:②類(lèi)的特性類(lèi)具有多態(tài)性、封裝性、抽象性、繼承性等特性。*多態(tài)性:多態(tài)性主要是指允許相關(guān)的對(duì)象對(duì)同一消息做出不同的反應(yīng)。42VisualFoxPro類(lèi):是一個(gè)數(shù)據(jù)模式和若干個(gè)程序過(guò)程(稱(chēng)為“方法程序”、一般一*封裝性:是指類(lèi)的內(nèi)部信息對(duì)用戶是隱蔽的。由于類(lèi)具有封裝性,因此不必被類(lèi)的概念或類(lèi)的抽象所困擾。在使用類(lèi)時(shí),用戶不需熟悉對(duì)象內(nèi)部的復(fù)雜性,只需掌握類(lèi)的使用方法。例如:使用照相機(jī)照相時(shí),無(wú)需了解照相機(jī)是怎樣設(shè)計(jì)的和內(nèi)部構(gòu)造,只要會(huì)使用即可。類(lèi)的封裝性使應(yīng)用程序的可用性大大提高了。*抽象性:允許用戶忽略實(shí)施細(xì)節(jié),從更高的等級(jí)上考慮一個(gè)實(shí)體。繼承性:指通過(guò)繼承關(guān)系利用已有的類(lèi)構(gòu)造新類(lèi)。任何一個(gè)基類(lèi)都有它的屬性。即使用戶沒(méi)有定義,VFP系統(tǒng)也賦給基類(lèi)相應(yīng)的缺省值。*繼承性(Inheritance)43VisualFoxPro*封裝性:是指類(lèi)的內(nèi)部信息對(duì)用戶是隱蔽的。由于類(lèi)具有封裝●對(duì)象能自動(dòng)繼承創(chuàng)建它的類(lèi)的功能?!?/p>
子類(lèi)能自動(dòng)繼承父類(lèi)的功能?!?/p>
對(duì)一個(gè)類(lèi)的改動(dòng)能反映到它的所有子類(lèi)中。2.VFP面向?qū)ο笏枷氲膶?shí)現(xiàn)方法VFP提供的設(shè)計(jì)器表單設(shè)計(jì)器菜單設(shè)計(jì)器報(bào)表設(shè)計(jì)器(1)VFP基類(lèi)在VFP中,為了實(shí)現(xiàn)面向?qū)ο蟮某绦蛟O(shè)計(jì)或創(chuàng)建應(yīng)用程序,系統(tǒng)提供了可以使用的基本類(lèi),即VFP基類(lèi)。這個(gè)基類(lèi)是系統(tǒng)本身內(nèi)含的,不存于某個(gè)類(lèi)庫(kù)中。用戶可以基于基類(lèi)生成所需的對(duì)象,也可以創(chuàng)建自己的類(lèi)。217頁(yè)表4.7給出了VFP基類(lèi)列表。44VisualFoxPro●對(duì)象能自動(dòng)繼承創(chuàng)建它的類(lèi)的功能。●子類(lèi)能自動(dòng)繼承父類(lèi)的VFP中的基類(lèi)容器類(lèi)控件類(lèi)每一個(gè)基類(lèi)對(duì)應(yīng)表單控件工具欄上的一個(gè)圖形按鈕:每一個(gè)VFP基類(lèi)都有自己的一套屬性、方法和事件。①容器類(lèi)容器類(lèi)可以包含其他對(duì)象,并且允許訪問(wèn)這些對(duì)象。例如:若創(chuàng)建一個(gè)含有兩個(gè)命令按鈕的容器類(lèi),而后將該類(lèi)的一個(gè)對(duì)象加入表單中,那么無(wú)論在設(shè)計(jì)時(shí)刻還是在運(yùn)行時(shí)刻,都可以對(duì)該容器中任何一個(gè)對(duì)象進(jìn)行單獨(dú)操作。45VisualFoxProVFP中的基類(lèi)容器類(lèi)每一個(gè)基類(lèi)對(duì)應(yīng)表單控件工具欄上的一個(gè)圖形不僅可以改變命令按鈕的位置、標(biāo)題,也可以在設(shè)計(jì)階段給這個(gè)容器添加新對(duì)象。②控件類(lèi)控件類(lèi)的封裝比容器類(lèi)更為嚴(yán)密,但也因此喪失了一些靈活性。他不能包含其他對(duì)象。最典型的控件類(lèi)就是命令按鈕、文本。文本自身是一個(gè)對(duì)象,在文本中不可放其它對(duì)象。容器類(lèi)雖然在引用時(shí)可以視為一個(gè)整體,但無(wú)論是在設(shè)計(jì)階段還是在運(yùn)行階段,其所包含的對(duì)象都是可識(shí)別并可以單獨(dú)操作的。由控件類(lèi)創(chuàng)造的對(duì)象,使用和修改需經(jīng)容器進(jìn)行引用。46VisualFoxPro不僅可以改變命令按鈕的位置、標(biāo)題,也可以在設(shè)計(jì)階段給這個(gè)容器VFP中的對(duì)象容器對(duì)象控件對(duì)象(2)VFP對(duì)象VFP的對(duì)象由基類(lèi)生成,VFP給出的各種控件工具欄提供了可以生成對(duì)象的按鈕,當(dāng)選擇一個(gè)按鈕在表單上單擊或拖動(dòng)畫(huà)出一個(gè)控件時(shí),即生成了一個(gè)對(duì)象。①容器與控件控件:是一個(gè)以圖表化方式顯示出來(lái)并能與用戶進(jìn)行交互的對(duì)象??丶ǔ1环胖糜谝粋€(gè)容器里。他不能包含其他對(duì)象。最典型的控件就是命令按鈕、文本。文本自身是一個(gè)對(duì)象,在文本中不可放其它對(duì)象。容器:是一種特殊控件,是可以包含其它對(duì)象的對(duì)象。書(shū)218頁(yè)表4.9列出了VFP中常用的容器及其所能包容的對(duì)象。47VisualFoxProVFP中的對(duì)象容器對(duì)象(2)VFP對(duì)象VFP的對(duì)象由基類(lèi)生表單容器對(duì)象及所包容的對(duì)象情況命令按鈕標(biāo)簽組合框文本框列表框表單控件工具欄頁(yè)框容器對(duì)象控件對(duì)象48VisualFoxPro表單容器對(duì)象及所包容的對(duì)象情況命令按鈕標(biāo)簽組合框文本框列表框②對(duì)象的引用在面向程序設(shè)計(jì)中,首先要明確下面幾個(gè)問(wèn)題:容器中的對(duì)象仍然可以是一個(gè)容器,一般把一個(gè)“對(duì)象”的直接容器稱(chēng)為“父容器”,在調(diào)用特定的對(duì)象時(shí),搞清該對(duì)象的“父容器”是至關(guān)重要的,不能把一個(gè)對(duì)象的間接容器錯(cuò)誤地視為其“父容器”。*容器中對(duì)象的層次*對(duì)象使用局域名每個(gè)對(duì)象都有一個(gè)名字。在給對(duì)象命名時(shí),只要保證同一個(gè)“父容器”下的各對(duì)象不重名即可,換句話說(shuō),對(duì)象使用的是局域名,因此不能單獨(dú)使用對(duì)象名來(lái)調(diào)用對(duì)象,49VisualFoxPro②對(duì)象的引用在面向程序設(shè)計(jì)中,首先要明確下面幾個(gè)問(wèn)題:容器書(shū)219頁(yè)圖4-25中的用對(duì)象的名稱(chēng):表單:Form1頁(yè)框:pageframe1
頁(yè)名——page1,page2,page3標(biāo)簽:lable1,lable2,lable3,lable4組合框:combo1,combo2文本框:text1,text1列表框:list1,list2命令按鈕:command1,command2以上是系統(tǒng)默認(rèn)的名稱(chēng),用戶可以修改,例如:form1修改為“字體對(duì)話框”,page1—字體,lable1—中文字體,等等。50VisualFoxPro書(shū)219頁(yè)圖4-25中的用對(duì)象的名稱(chēng):表單:Form119V<表單集>.<表單名>.<容器名1>.<容器名2><對(duì)象名>以上格式所表示的是<對(duì)象名>中的對(duì)象,不是前面的部分,其間用小數(shù)點(diǎn)分隔。如果某個(gè)對(duì)象直接放在表單上,則引用時(shí)不應(yīng)再寫(xiě)容器名。*對(duì)象引用方式*對(duì)象引用中的關(guān)鍵字及含義(見(jiàn)書(shū)220頁(yè)表4-10)This:表示當(dāng)前對(duì)象Parent:表示當(dāng)前對(duì)象的直接“父容器”ThisForm:表示包含當(dāng)前對(duì)象的表單ThisFormSet:表示包含當(dāng)前對(duì)象的表單所屬的表單集例如在圖4-25中:命令按鈕1的引用:mand1Text1引用:thisfrom.pagefrane1.page1.text151VisualFoxPro<表單集>.<表單名>.<容器名1>.<容器名2>①屬性窗口打開(kāi)屬性窗口的方法:(3)VFP對(duì)象的屬性*顯示菜單/屬性*右擊表單空白處,快捷菜單/屬性對(duì)象組合框選項(xiàng)卡屬性設(shè)置框?qū)傩粤斜砜驅(qū)傩哉f(shuō)明信息屬性窗口各部分功能:對(duì)象組合框——下拉列表中顯示當(dāng)前表單、表單集及全部控件對(duì)象的列表。選擇任意對(duì)象,將在屬性列表框中列出有關(guān)這個(gè)對(duì)象的所有屬性、事件和方法程序供選擇設(shè)置。選項(xiàng)卡——包含5個(gè)選項(xiàng)卡,分別用來(lái)顯示對(duì)象的屬性、事件、方法程序等,各選項(xiàng)按字母順序排列。52VisualFoxPro①屬性窗口(3)VFP對(duì)象的屬性*顯示菜單/屬性對(duì)象組合【全部】:列出對(duì)象的所有屬性、事件、方法程序【數(shù)據(jù)】:列出所有顯示或操縱的數(shù)據(jù)屬性【方法程序】:對(duì)象的方法程序與事件,帶有EVENT的是事件,其余為方法程序?!静季帧浚簩?duì)象的位置、大小、顏色、字體等屬性?!酒渌浚侯?lèi)信息和用戶自定義屬性等。注意:不同的對(duì)象,有不同的屬性值。屬性設(shè)置框——用于更改屬性值的文本框或組合框,左邊的三個(gè)按鈕“×”、“√”、“fx”可以取消和設(shè)置以及調(diào)用函數(shù)。屬性列表——給出在對(duì)象組合框選定的對(duì)象按選定選項(xiàng)卡分類(lèi)后的各種屬性,包括屬性名和當(dāng)前屬性值。如果選中某個(gè)屬性,其值會(huì)在屬性設(shè)置框中出現(xiàn),以供修改。53VisualFoxPro【全部】:列出對(duì)象的所有屬性、事件、方法程序【數(shù)據(jù)】:列出所屬性說(shuō)明信息——顯示在屬性列表中被選擇屬性的含義。②常用屬性介紹不同的對(duì)象有不同的屬性,有些對(duì)象屬性有上百個(gè),有些屬性只是在特別需要時(shí)才用到,而有些屬性經(jīng)常用到,而且很多對(duì)象具有一些相同的屬性。書(shū)面221頁(yè)表4-12給出了一些常用或通用的屬性。③引用對(duì)象屬性格式:<對(duì)象引用>.<對(duì)象屬性>例如:圖4-25中,表單標(biāo)題為“字體對(duì)話框”,表示如下:Thisform.coption=“字體對(duì)話框”將文本框text1輸入的值存入變量ww中,代碼為:ww=thisform.pagefrane1.page1.text1.value對(duì)象的引用對(duì)象的屬性54VisualFoxPro屬性說(shuō)明信息——顯示在屬性列表中被選擇屬性的含義。②常用屬(1)Caption屬性——標(biāo)題屬性指定對(duì)象標(biāo)題中顯示的文本。(2)Name屬性指定在代碼中引用對(duì)象時(shí)所用的名稱(chēng)。(3)AutoSize屬性——控件是否根據(jù)正文自動(dòng)調(diào)整大小.T.——真:自動(dòng)調(diào)整大小.F.——假(默認(rèn)):保持原來(lái)設(shè)計(jì)時(shí)大小。正文太長(zhǎng),則自動(dòng)裁剪掉。(4)Heigh屬性——指定對(duì)象在屏幕上的高度(5)Top屬性控件:指定相對(duì)父對(duì)象最頂端的所在的位置表單對(duì)象:確定表單頂部邊緣與VFP主窗口間距離VFP中的常用屬性55VisualFoxPro(1)Caption屬性——標(biāo)題屬性VFP中的常用屬性24控件:相對(duì)父對(duì)象的左邊界距離表單:表單左邊界與VFP主窗口左邊界的距離(8)Enabled屬性——指定控件是否可用.T.——真:可用.F.——假:不可用,呈暗淡色,禁止用戶操作(9)Visible屬性——指定控件是否可見(jiàn).T.——真:可見(jiàn).F.——假:不可見(jiàn),但控件本身存在(10)FontName屬性——指定對(duì)象顯示文本的字體名(11)FontSize屬性——指定對(duì)象文本字體大小(7)Left屬性56VisualFoxPro控件:相對(duì)父對(duì)象的左邊界距離(7)Left屬性25VisuFontBold——是否為粗體FontItalic——是否斜體FontStrikethru——是否加
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度企業(yè)項(xiàng)目管理顧問(wèn)合同3篇
- 2025年度公司員工數(shù)字化轉(zhuǎn)型合伙協(xié)議2篇
- 2025年度電子商務(wù)平臺(tái)勞務(wù)合作合同
- 二零二五年度農(nóng)業(yè)勞務(wù)用工服務(wù)合同范本(含農(nóng)業(yè)綠色防控技術(shù))3篇
- 二零二五年度環(huán)保項(xiàng)目融資抵押合同3篇
- 二零二五年度農(nóng)村林地林業(yè)工程承包合同書(shū)
- 2025年度公司個(gè)人借款合同社會(huì)責(zé)任及可持續(xù)發(fā)展協(xié)議3篇
- 二零二五年度養(yǎng)老服務(wù)行業(yè)員工勞動(dòng)合同范本3篇
- 2025年度農(nóng)村自建房拆除與重建一體化服務(wù)協(xié)議合同書(shū)
- 二零二五年度文化場(chǎng)館租賃及活動(dòng)組織合同3篇
- 第二講 七十五載迎盛世 砥礪前行續(xù)華章2024年形勢(shì)與政策(課件)
- YY 0286.1-2007專(zhuān)用輸液器第1部分:一次性使用精密過(guò)濾輸液器
- GB/T 4423-2020銅及銅合金拉制棒
- GB/T 28035-2011軟件系統(tǒng)驗(yàn)收規(guī)范
- 動(dòng)物生理學(xué)第十二章 泌乳課件
- 史記·秦始皇本紀(jì)課件
- 化妝品產(chǎn)品召回模擬演練記錄表格
- 痤瘡示意圖課件
- 綜合管理部負(fù)責(zé)人(部長(zhǎng))崗位職責(zé)
- 人才培養(yǎng)方案匯報(bào)課件
- 檢驗(yàn)科15項(xiàng)質(zhì)量控制指標(biāo)(檢驗(yàn)科質(zhì)控小組活動(dòng)記錄)
評(píng)論
0/150
提交評(píng)論