第六計(jì)算機(jī)等級考試二級VF程序設(shè)計(jì)_第1頁
第六計(jì)算機(jī)等級考試二級VF程序設(shè)計(jì)_第2頁
第六計(jì)算機(jī)等級考試二級VF程序設(shè)計(jì)_第3頁
第六計(jì)算機(jī)等級考試二級VF程序設(shè)計(jì)_第4頁
第六計(jì)算機(jī)等級考試二級VF程序設(shè)計(jì)_第5頁
已閱讀5頁,還剩66頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第六章第六章 表單設(shè)計(jì)與應(yīng)用表單設(shè)計(jì)與應(yīng)用v表單(表單(FormForm)是)是Visual FoxproVisual Foxpro提供的用于提供的用于建立應(yīng)用程序界面的最主要的工具之一。表建立應(yīng)用程序界面的最主要的工具之一。表單內(nèi)可以包含命令按扭、文本框、列表框等單內(nèi)可以包含命令按扭、文本框、列表框等各種界面元素,產(chǎn)生標(biāo)準(zhǔn)的窗口或?qū)υ捒蚋鞣N界面元素,產(chǎn)生標(biāo)準(zhǔn)的窗口或?qū)υ捒蚪虒W(xué)重點(diǎn)和方法方法:以典型案例驅(qū)動,引出控件的主要屬以典型案例驅(qū)動,引出控件的主要屬性和方法性和方法w常用控件w標(biāo)簽、標(biāo)簽、計(jì)時器(主要屬性是計(jì)時器(主要屬性是EnabledEnabled和和interval interva

2、l )、命令按鈕、文本框、組合框、)、命令按鈕、文本框、組合框、w單選按鈕、微調(diào)控件、復(fù)選框、圖象、表格、單選按鈕、微調(diào)控件、復(fù)選框、圖象、表格、v重點(diǎn):典型應(yīng)用重點(diǎn):典型應(yīng)用6.16.1面向?qū)ο蟮母拍蠲嫦驅(qū)ο蟮母拍顅一、一、 對象對象(Object)(Object)v1. 1. 對象:對象:是反映客觀事物屬性及行為特征的描述。每個對象是反映客觀事物屬性及行為特征的描述。每個對象都具有描述其特性的屬性,及附屬于它的行為。對象把事物的都具有描述其特性的屬性,及附屬于它的行為。對象把事物的屬性和行為封裝在一起,是一個動態(tài)的概念。對象是面向?qū)ο髮傩院托袨榉庋b在一起,是一個動態(tài)的概念。對象是面向?qū)ο缶?/p>

3、程的基本元素,是編程的基本元素,是“類類”的具體實(shí)例。的具體實(shí)例。v2. 2. 對象的屬性:對象的屬性:對象的屬性特征標(biāo)識了對象的物理性質(zhì),對對象的屬性特征標(biāo)識了對象的物理性質(zhì),對象的行為特征描述了對象可執(zhí)行的行為動作;對象的每一種屬象的行為特征描述了對象可執(zhí)行的行為動作;對象的每一種屬性,都是與其他對象加以區(qū)別的特性,都具有一定的含義,并性,都是與其他對象加以區(qū)別的特性,都具有一定的含義,并賦予一定的值;對象大多數(shù)是可見的,也有一些對象是不可見賦予一定的值;對象大多數(shù)是可見的,也有一些對象是不可見的。的。二、類二、類類(類(Class):):是一組對象的屬性和行為特征的抽象描述?;蛘呤且唤M對

4、象的屬性和行為特征的抽象描述?;蛘哒f類是具有共同屬性、共同操作性質(zhì)的對象的集合。說類是具有共同屬性、共同操作性質(zhì)的對象的集合。類與對象的關(guān)系:類與對象的關(guān)系:類是對象的抽象描述;對象是類的實(shí)例。類類是對象的抽象描述;對象是類的實(shí)例。類是抽象的,對象是具體的。在是抽象的,對象是具體的。在VF系統(tǒng)中,類就象是一個摸板,系統(tǒng)中,類就象是一個摸板,對象都是由它生成的,類定義了對象所有的屬性、事件和方對象都是由它生成的,類定義了對象所有的屬性、事件和方法,從而決定了對象的屬性和它的行為。法,從而決定了對象的屬性和它的行為。類的特性類的特性 (1 1)繼承性:繼承性:可以從現(xiàn)有的類派生出新類。例如:學(xué)生是

5、從人類派生出來的新類??梢詮默F(xiàn)有的類派生出新類。例如:學(xué)生是從人類派生出來的新類。 (2 2)封裝性:封裝性:將方法和數(shù)據(jù)存放于同一個對象中,對數(shù)據(jù)的存取只能通過該對象本將方法和數(shù)據(jù)存放于同一個對象中,對數(shù)據(jù)的存取只能通過該對象本 身的方法來進(jìn)行。身的方法來進(jìn)行。 (3 3)多態(tài)性:多態(tài)性:不同的對象接收到相同的消息時,可以做出完全不同的解釋。不同的對象接收到相同的消息時,可以做出完全不同的解釋。為了更好地使用類,先要了解為了更好地使用類,先要了解基類基類的類型和基類的屬性。的類型和基類的屬性。6.2 Visual Foxpro基類簡介基類簡介1. 基類(基類(P174):):基類又可以分成基

6、類又可以分成容器類容器類和和控件類控件類。 容器(容器(P176)(Containers)可以容納其他對象,并允許)可以容納其他對象,并允許訪問所包含的對象。如表單,自身是一個對象,它又可以訪問所包含的對象。如表單,自身是一個對象,它又可以把按扭、編輯框、文本框等放在表單中。把按扭、編輯框、文本框等放在表單中。 控件控件可以以圖形化方式顯示出來并能與用戶進(jìn)行交互的對可以以圖形化方式顯示出來并能與用戶進(jìn)行交互的對象。如文本框、命令按鈕等。不能容納其他對象,它沒有象。如文本框、命令按鈕等。不能容納其他對象,它沒有容器類靈活。由控件類創(chuàng)造的對象,是不能單獨(dú)使用和修容器類靈活。由控件類創(chuàng)造的對象,是不

7、能單獨(dú)使用和修改的,它只能作為容器類中的一個元素,通過由容器類創(chuàng)改的,它只能作為容器類中的一個元素,通過由容器類創(chuàng)造的對象修改或使用。造的對象修改或使用。2.事件事件事件(事件(Event)是一種由系統(tǒng)預(yù)先定義而由用戶或系統(tǒng)發(fā)出的動是一種由系統(tǒng)預(yù)先定義而由用戶或系統(tǒng)發(fā)出的動作。事件作用于對象,對象識別事件并作出相應(yīng)反應(yīng)。事件作。事件作用于對象,對象識別事件并作出相應(yīng)反應(yīng)。事件可以由系統(tǒng)引發(fā),比如生成對象時,系統(tǒng)就引發(fā)一個可以由系統(tǒng)引發(fā),比如生成對象時,系統(tǒng)就引發(fā)一個Init事件,事件,對象識別該事件,并執(zhí)行相應(yīng)的對象識別該事件,并執(zhí)行相應(yīng)的Init事件代碼。事件也可以由事件代碼。事件也可以由用

8、戶引發(fā),比如用戶用鼠標(biāo)單擊程序界面上一個命令按扭就用戶引發(fā),比如用戶用鼠標(biāo)單擊程序界面上一個命令按扭就引發(fā)了一個引發(fā)了一個Click事件,命令按扭識別該事件并執(zhí)行相應(yīng)的事件,命令按扭識別該事件并執(zhí)行相應(yīng)的Click事件代碼。事件代碼。事件事件觸發(fā)條件觸發(fā)條件事件事件觸發(fā)條件觸發(fā)條件LoadLoad在創(chuàng)建對象前發(fā)生在創(chuàng)建對象前發(fā)生MouseUPMouseUP釋放鼠標(biāo)鍵時釋放鼠標(biāo)鍵時InitInit在創(chuàng)建對象時發(fā)生在創(chuàng)建對象時發(fā)生MouseDownMouseDown按下鼠標(biāo)鍵時按下鼠標(biāo)鍵時ActivateActivate 當(dāng)激活表單、表單集當(dāng)激活表單、表單集或頁對象,或者顯示或頁對象,或者顯示工具

9、欄對象時工具欄對象時KeyPressKeyPress當(dāng)用戶按下并釋放某當(dāng)用戶按下并釋放某個鍵時發(fā)生此事件個鍵時發(fā)生此事件GotFocusGotFocus 對象得到焦點(diǎn)時對象得到焦點(diǎn)時ValidValid在控制失去焦點(diǎn)之前在控制失去焦點(diǎn)之前發(fā)生發(fā)生ClickClick單擊鼠標(biāo)左鍵時單擊鼠標(biāo)左鍵時LostFocusLostFocus對象失去焦點(diǎn)時對象失去焦點(diǎn)時DblClickDblClick 雙擊鼠標(biāo)左鍵時雙擊鼠標(biāo)左鍵時UnloadUnload釋放對象時釋放對象時表表6.1 6.1 常見部分事件表常見部分事件表3.方法方法方法方法(Method)是附屬于對象的行為和動作。)是附屬于對象的行為和動作

10、。 屬于同類的對象具有相同的行為,當(dāng)某個行為作用于對象時,屬于同類的對象具有相同的行為,當(dāng)某個行為作用于對象時,我們就稱對象執(zhí)行了一個方法程序。方法程序是我們就稱對象執(zhí)行了一個方法程序。方法程序是Visual Visual FoxProFoxPro內(nèi)部定義的通用過程,能使對象執(zhí)行一個操作。方法內(nèi)部定義的通用過程,能使對象執(zhí)行一個操作。方法程序代碼由程序代碼由Visual FoxProVisual FoxPro定義,用戶是看不見的。在定義,用戶是看不見的。在VF系系統(tǒng)中,對象可以實(shí)現(xiàn)統(tǒng)中,對象可以實(shí)現(xiàn)50多種方法操作。創(chuàng)建對象后,就可以多種方法操作。創(chuàng)建對象后,就可以從應(yīng)用程序的任意位置調(diào)用已創(chuàng)

11、建的方法。從應(yīng)用程序的任意位置調(diào)用已創(chuàng)建的方法。6.3創(chuàng)建與運(yùn)行表單創(chuàng)建與運(yùn)行表單6.3.1創(chuàng)建表單創(chuàng)建表單創(chuàng)建表單一般有兩種途徑:創(chuàng)建表單一般有兩種途徑:使用表單向?qū)?chuàng)建即用表單。使用表單向?qū)?chuàng)建即用表單。使用表單設(shè)計(jì)器創(chuàng)建、設(shè)計(jì)新的表單或修改已有的表單。使用表單設(shè)計(jì)器創(chuàng)建、設(shè)計(jì)新的表單或修改已有的表單。表單文件的擴(kuò)展名是表單文件的擴(kuò)展名是.scx,表單備注文件的擴(kuò)展名是,表單備注文件的擴(kuò)展名是.sct。創(chuàng)建表單(續(xù))創(chuàng)建表單(續(xù))表單設(shè)計(jì)器的打開表單設(shè)計(jì)器的打開用表單設(shè)計(jì)器可以創(chuàng)建和修改表單。打開表單設(shè)計(jì)器有如下幾種方法用表單設(shè)計(jì)器可以創(chuàng)建和修改表單。打開表單設(shè)計(jì)器有如下幾種方法(通過操作

12、演示通過操作演示)1在項(xiàng)目管理器中打開在項(xiàng)目管理器中打開(1)新建打開:新建打開:即通過新建表單打開。即通過新建表單打開。(2)修改打開:修改打開:即通過修改已有表單打開。即通過修改已有表單打開。對于系統(tǒng)開發(fā)來講,這種方法為首選。對于系統(tǒng)開發(fā)來講,這種方法為首選。2使用菜單打開使用菜單打開(1)新建打開:新建打開:單擊單擊“文件文件”“新建新建”命令。命令。(2)修改打開:修改打開:單擊單擊“文件文件” “打開打開”命令。命令。3用命令打開用命令打開(1)新建:新建:命令:命令:create form 。(2)修改:修改:命令:命令:modify form 。6.3.2運(yùn)行表單運(yùn)行表單1.項(xiàng)目

13、管理器:項(xiàng)目管理器:選擇表單選擇表單 運(yùn)行運(yùn)行2.菜單菜單:表單表單 執(zhí)行表單執(zhí)行表單 或或工具欄工具欄 運(yùn)行運(yùn)行3.菜單菜單:程序程序 運(yùn)行運(yùn)行 輸入輸入4.命令:命令:DO FORM WITH 6.4表單設(shè)計(jì)器表單設(shè)計(jì)器6.4.1表單設(shè)計(jì)器環(huán)境表單設(shè)計(jì)器環(huán)境 表單設(shè)計(jì)器啟動后,主窗口上將出現(xiàn)表單設(shè)計(jì)器啟動后,主窗口上將出現(xiàn)“表單設(shè)計(jì)器窗口表單設(shè)計(jì)器窗口”、“屬性屬性”窗口窗口、“表單控件表單控件”工具欄、工具欄、“表單設(shè)計(jì)器表單設(shè)計(jì)器”工工具欄以及具欄以及“表單表單”菜單。如圖菜單。如圖1.表單設(shè)計(jì)器窗口表單設(shè)計(jì)器窗口“表單設(shè)計(jì)器表單設(shè)計(jì)器” 窗口內(nèi)含正在設(shè)計(jì)的表單的表單窗口窗口內(nèi)含正在設(shè)

14、計(jì)的表單的表單窗口.用戶用戶可在表單窗口上可視化地添加和修改控件??稍诒韱未翱谏峡梢暬靥砑雍托薷目丶1韱未翱谥荒鼙韱未翱谥荒茉谠凇氨韱卧O(shè)計(jì)器表單設(shè)計(jì)器”窗口內(nèi)移動。窗口內(nèi)移動。2. 屬性窗口屬性窗口用來設(shè)置屬性。含用來設(shè)置屬性。含對象框?qū)ο罂?、屬性設(shè)置框?qū)傩栽O(shè)置框和和屬性屬性、方法方法、事件列表事件列表框???。打開:打開:當(dāng)設(shè)計(jì)器打開時,采用如下方法當(dāng)設(shè)計(jì)器打開時,采用如下方法 (1)單擊單擊“表單設(shè)計(jì)器表單設(shè)計(jì)器”工具欄中的工具欄中的“屬性窗口屬性窗口”鈕。鈕。 (2)單擊單擊 “顯示顯示”菜單中的菜單中的“屬性屬性”命令。命令。 (3)右擊對象,選右擊對象,選“屬性屬性”使用方法:使用

15、方法:在設(shè)計(jì)器中或?qū)ο罂蛑羞x定對象,在列表框中選定屬在設(shè)計(jì)器中或?qū)ο罂蛑羞x定對象,在列表框中選定屬性,在屬性設(shè)置框中輸入或選擇屬性設(shè)置。性,在屬性設(shè)置框中輸入或選擇屬性設(shè)置。屬性窗口在表單設(shè)計(jì)中具有重要的作用。任何控件屬性窗口在表單設(shè)計(jì)中具有重要的作用。任何控件(包括表單包括表單)都都通過該窗口設(shè)置屬性。因此,掌握屬性窗口的使用是表單設(shè)計(jì)的通過該窗口設(shè)置屬性。因此,掌握屬性窗口的使用是表單設(shè)計(jì)的重點(diǎn)之一。重點(diǎn)之一。3. 表單控件工具欄表單控件工具欄 “表單控件表單控件”工具欄內(nèi)含控件按扭工具欄內(nèi)含控件按扭.利用利用“表單控件表單控件”工具欄可以方便地往表工具欄可以方便地往表單添加控件:單添加控

16、件:先用鼠標(biāo)單擊先用鼠標(biāo)單擊“表單控件表單控件”工具欄中相應(yīng)的控件按扭,然后將工具欄中相應(yīng)的控件按扭,然后將鼠標(biāo)移至表單窗口的合適位置單擊鼠標(biāo)或拖動鼠標(biāo)以確定控件大小。鼠標(biāo)移至表單窗口的合適位置單擊鼠標(biāo)或拖動鼠標(biāo)以確定控件大小。 4. 表單設(shè)計(jì)器工具欄表單設(shè)計(jì)器工具欄 “表單設(shè)計(jì)器表單設(shè)計(jì)器”工具欄內(nèi)含工具欄內(nèi)含“設(shè)置設(shè)置Tab鍵次序鍵次序”、“數(shù)據(jù)環(huán)境數(shù)據(jù)環(huán)境”、“屬性窗屬性窗口口”“”“代碼窗口代碼窗口”、“表單控件工具欄表單控件工具欄”、“調(diào)色板工具欄調(diào)色板工具欄”、“布局工具布局工具欄欄”、“表單生成器表單生成器”和和“自動格式自動格式”等按扭。等按扭。 “表單設(shè)計(jì)器表單設(shè)計(jì)器”工具欄

17、可以通過工具欄可以通過 “顯示顯示”菜單中的菜單中的“工具欄工具欄”命令打開和關(guān)閉。命令打開和關(guān)閉。 5. 表單菜單表單菜單 表單菜單中的命令主要用于創(chuàng)建、編輯表單或表單集,如為表單增加新的屬表單菜單中的命令主要用于創(chuàng)建、編輯表單或表單集,如為表單增加新的屬性和方法等。性和方法等。6.4.2 控件的操作與布局控件的操作與布局1.控件的基本操作控件的基本操作(1)選定控件)選定控件(2)移動控件)移動控件(3)調(diào)整控件大小)調(diào)整控件大?。?)復(fù)制控件)復(fù)制控件(5)刪除控件)刪除控件2.控件布局控件布局 “布局布局”工具欄(工具欄(P184)3.設(shè)置設(shè)置Tab鍵次序鍵次序tab鍵次序即表單運(yùn)行時

18、光標(biāo)移動的順序??丶砑拥捻樞蚰J(rèn)為鍵次序即表單運(yùn)行時光標(biāo)移動的順序??丶砑拥捻樞蚰J(rèn)為執(zhí)行的順序。執(zhí)行的順序。6.6 基本型控件基本型控件6.6.1標(biāo)簽標(biāo)簽(Label) 標(biāo)簽主要用于顯示一段固定的文本信息字符串。顯示的內(nèi)容標(biāo)簽主要用于顯示一段固定的文本信息字符串。顯示的內(nèi)容可以直接賦予標(biāo)簽的標(biāo)題可以直接賦予標(biāo)簽的標(biāo)題(Caption)屬性。標(biāo)簽的其他常用屬性。標(biāo)簽的其他常用屬性有:是否透明屬性有:是否透明(BackStyle)、字體、字體(fontname)、字號、字號(FontSize)、背景色、背景色(BackColor)及字的顏色及字的顏色(ForeColor),是否自動設(shè)置大小是

19、否自動設(shè)置大小(AutoSize)、能否成為多行標(biāo)題、能否成為多行標(biāo)題(wordwrap)等等。例例1:給表單:給表單1添加添加3個標(biāo)簽控件,用于顯示系統(tǒng)的程序設(shè)計(jì)說明個標(biāo)簽控件,用于顯示系統(tǒng)的程序設(shè)計(jì)說明2.計(jì)時器控件計(jì)時器控件 計(jì)時器控件是主要利用系統(tǒng)時鐘來控制某些具有規(guī)律性的周計(jì)時器控件是主要利用系統(tǒng)時鐘來控制某些具有規(guī)律性的周期任務(wù)的定時操作期任務(wù)的定時操作.計(jì)時器控件不能單獨(dú)使用計(jì)時器控件不能單獨(dú)使用,必須與表單、必須與表單、容器類或者控件類一同使用。容器類或者控件類一同使用。計(jì)時器控件的兩個主要屬性是計(jì)時器控件的兩個主要屬性是Enabled和和intervalEnabled屬性用于

20、控制計(jì)時器的打開與關(guān)閉。屬性用于控制計(jì)時器的打開與關(guān)閉。interval屬性用于定義計(jì)時器事件觸發(fā)的時間間隔(毫秒級)屬性用于定義計(jì)時器事件觸發(fā)的時間間隔(毫秒級)例例2:2:設(shè)計(jì)一個包含設(shè)計(jì)一個包含1 1個計(jì)時器控件個計(jì)時器控件Timer1Timer1和和4 4個標(biāo)簽控件個標(biāo)簽控件的表單的表單, ,用于顯示系統(tǒng)設(shè)計(jì)說明及控制系統(tǒng)程序標(biāo)題的用于顯示系統(tǒng)設(shè)計(jì)說明及控制系統(tǒng)程序標(biāo)題的移動速度移動速度. .“timer1timer1”的屬性:的屬性:enabledenabled:.T. interval:100.T. interval:100定義定義“timer1timer1”的的“timertim

21、er”事件代碼如事件代碼如下:下:IF THISFORM.LABEL4.LEFT1IF THISFORM.LABEL4.LEFT1THISFORM.LABEL4.LEFT=THISFORM.WIDTTHISFORM.LABEL4.LEFT=THISFORM.WIDTH-8H-8ELSEELSE THISFORM.LABEL4.LEFT=THISFORM.LABETHISFORM.LABEL4.LEFT=THISFORM.LABEL4.LEFT-2L4.LEFT-2ENDIF ENDIF 補(bǔ):對象的引用補(bǔ):對象的引用 對于容器層次中的對象,為了引用和操作,就對于容器層次中的對象,為了引用和操作,

22、就必須標(biāo)識出與其關(guān)聯(lián)的容器類必須標(biāo)識出與其關(guān)聯(lián)的容器類。例如。例如要操作表單集中某一表單的控件,就必須先引用表單集和表單,然后才是控件。要操作表單集中某一表單的控件,就必須先引用表單集和表單,然后才是控件。Visual FoxProVisual FoxPro提供了提供了絕對引用絕對引用和和相對引用相對引用兩種方式。兩種方式。 絕對引用必須絕對引用必須標(biāo)明每個層次對象標(biāo)明每個層次對象的對象名,相對引用可用以下的簡捷方法來標(biāo)識的對象名,相對引用可用以下的簡捷方法來標(biāo)識操作的對象:操作的對象: Parent:引用對象的直接容器(上一層容器類)。引用對象的直接容器(上一層容器類)。 This:表示當(dāng)前

23、對象。表示當(dāng)前對象。 ThisForm:表示包含該對象的表單。表示包含該對象的表單。 ThisFormset:表示包含該對象的表單集。表示包含該對象的表單集。 ActiveControl:表示當(dāng)前活動表單中有焦點(diǎn)的控件表示當(dāng)前活動表單中有焦點(diǎn)的控件 例如:例如: ThisFormset .Form1.Command1.Caption=”確定確定” ThisForm.Command1.Caption=”確定確定” This.Caption=”確定確定” This.Parent.BackColor=RGB(255,0,0) 3. 命令按鈕控件命令按鈕控件v命令按鈕控件主要用來命令按鈕控件主要用來控

24、制程序的執(zhí)行過程和控制程序的執(zhí)行過程和數(shù)據(jù)表中數(shù)據(jù)的操作數(shù)據(jù)表中數(shù)據(jù)的操作.v例例3:設(shè)計(jì)一個包含命令設(shè)計(jì)一個包含命令按鈕控件的表單按鈕控件的表單.設(shè)計(jì)命令按鈕控件設(shè)計(jì)命令按鈕控件定義定義”command1command1”的的”clickclick”事件代碼如下事件代碼如下: :do form e:vfpdo form e:vfp表單表單2010120101定義定義”command2command2”的的”clickclick”事件代碼如下事件代碼如下: :A=MESSAGEBOX(A=MESSAGEBOX(你真的要退出檔案管理系統(tǒng)你真的要退出檔案管理系統(tǒng)嗎嗎?,4+16+0,?,4+16+

25、0,對話窗口對話窗口) IF a=6 IF a=6 RELEASE THISFORM RELEASE THISFORM ENDIF ENDIF 補(bǔ):信息框函數(shù)補(bǔ):信息框函數(shù)messageboxmessagebox格式:格式:messageboxmessagebox( ,2)功能功能: :顯示一個用戶自定義對話框。顯示一個用戶自定義對話框。說明:說明:1 1.1指定在對話框中顯示的文本指定在對話框中顯示的文本。 指指定對話框中的按鈕和圖標(biāo)、顯示對話框時的默認(rèn)按鈕以及對話框的行為。定對話框中的按鈕和圖標(biāo)、顯示對話框時的默認(rèn)按鈕以及對話框的行為。當(dāng)省略當(dāng)省略 時時, ,其值為其值為0 0。數(shù)值含義如

26、表所示。數(shù)值含義如表所示。 值實(shí)際上是值實(shí)際上是3 3個值的和個值的和從下面每個表中選一個值。例如,從下面每個表中選一個值。例如,若若 為為3535,即(,即(3+32+03+32+0),則顯示的對話框含有如下特征:),則顯示的對話框含有如下特征:“是是”、“否否”和和“取消取消”按鈕;按鈕;信息框顯示問號圖標(biāo);信息框顯示問號圖標(biāo);第一個按鈕,即第一個按鈕,即“是是”按鈕為默認(rèn)按鈕按鈕為默認(rèn)按鈕2.2.2指定對話框標(biāo)題欄中的文本,若省略該字符串,標(biāo)題欄指定對話框標(biāo)題欄中的文本,若省略該字符串,標(biāo)題欄中將顯示中將顯示“microsoft visual foxpromicrosoft visual

27、 foxpro”。數(shù)值數(shù)值對話框按鈕對話框按鈕0 0僅有僅有“確定確定”按鈕按鈕1 1“確定確定”和和“取消取消”按鈕按鈕2 2“放棄放棄”、“重試重試”和和“忽略忽略”按鈕按鈕3 3“是是”、“否否”和和“取消取消”按按鈕鈕4 4“是是”、“否否”按鈕按鈕5 5“重試重試”和和“取消取消”按鈕按鈕數(shù)值數(shù)值圖標(biāo)圖標(biāo)1616“停止停止”圖標(biāo)圖標(biāo)3232問號問號4848驚嘆號驚嘆號6464信息(信息(i i)圖標(biāo))圖標(biāo)數(shù)值數(shù)值默認(rèn)按鈕默認(rèn)按鈕0 0第一個按鈕第一個按鈕256256第二個按鈕第二個按鈕512512第三個按鈕第三個按鈕表表6-16-1按鈕值與按鈕類型的對應(yīng)關(guān)系按鈕值與按鈕類型的對應(yīng)關(guān)系

28、表表6-26-2圖標(biāo)值與圖表類型的對應(yīng)關(guān)系圖標(biāo)值與圖表類型的對應(yīng)關(guān)系表表6-36-3默認(rèn)按鈕值與默認(rèn)按鈕類型的對應(yīng)關(guān)系默認(rèn)按鈕值與默認(rèn)按鈕類型的對應(yīng)關(guān)系信息框函數(shù)信息框函數(shù)messageboxmessageboxv例:例:messagebox(了了解此函數(shù)的使用方法了解此函數(shù)的使用方法了嗎?嗎?,35,函數(shù)使用示函數(shù)使用示例例)v3.messagebox()3.messagebox()函數(shù)的函數(shù)的返回值為數(shù)值型返回值為數(shù)值型, ,它表它表明用戶選取了對話框中明用戶選取了對話框中的那個按鈕的那個按鈕, ,具體規(guī)定具體規(guī)定如下如下返回返回值值選取按鈕選取按鈕0 0確定確定1 1取消取消2 2放棄放

29、棄3 3重試重試4 4忽略忽略5 5是是6 6否否表表12-412-4函數(shù)返回值與選取按鈕的對應(yīng)關(guān)系函數(shù)返回值與選取按鈕的對應(yīng)關(guān)系4.4.文本框控件文本框控件文本框控件主要用于數(shù)據(jù)表中某些字段的輸入、輸出,以及文本框控件主要用于數(shù)據(jù)表中某些字段的輸入、輸出,以及從窗口給內(nèi)存變量賦值等操作。從窗口給內(nèi)存變量賦值等操作。文本框控件和標(biāo)簽控件最主要的文本框控件和標(biāo)簽控件最主要的區(qū)別在于區(qū)別在于它們使用的數(shù)據(jù)源是不它們使用的數(shù)據(jù)源是不同的,同的,標(biāo)簽控件的數(shù)據(jù)源來自于標(biāo)簽控件的數(shù)據(jù)源來自于CAPTIONCAPTION屬性,文本框控件的數(shù)屬性,文本框控件的數(shù)據(jù)源來自于數(shù)據(jù)表中的字段和內(nèi)據(jù)源來自于數(shù)據(jù)表中

30、的字段和內(nèi)存變量。存變量。例例4 4:設(shè)計(jì)一個包含文本框控件的:設(shè)計(jì)一個包含文本框控件的表單,用于系統(tǒng)程序口令的輸入。表單,用于系統(tǒng)程序口令的輸入。文本框控件文本框控件文本框控件的主要屬性:文本框控件的主要屬性:PasswordPassword:* * ValueValue:(無)(無) NameName:passwordpassword“確認(rèn)確認(rèn)”按鈕的按鈕的“clickclick”事件代碼如下:事件代碼如下:IF TRIM(THISFORM.PASSWORD.VALUE)aIF TRIM(THISFORM.PASSWORD.VALUE)a IF MESSAGEBOX( IF MESSAGE

31、BOX(請重新輸入口令請重新輸入口令,0+16,0+16,提示提示)=1)=1 THISFORM.PASSWORD. THISFORM.PASSWORD.SETFOCUS(P188)SETFOCUS(P188) ENDIF ENDIFENDIFENDIFIF TRIM(THISFORM.PASSWORD.VALUE)=aIF TRIM(THISFORM.PASSWORD.VALUE)=a DO FORM E:VFPFORM1.SCX DO FORM E:VFPFORM1.SCX RELEASE THISFORM RELEASE THISFORMENDIF ENDIF “退出退出”按鈕的按鈕的“

32、clickclick”事件代碼如下:事件代碼如下:A=MESSAGEBOX(A=MESSAGEBOX(你真的要退出人才管理系統(tǒng)嗎你真的要退出人才管理系統(tǒng)嗎?,4+16+0,?,4+16+0,對話窗口對話窗口) IF A=6 IF A=6 RELEASE THISFORM RELEASE THISFORM ENDIF ENDIF 6.4.3數(shù)據(jù)環(huán)境數(shù)據(jù)環(huán)境 每一個表單或表單集都包括一個數(shù)據(jù)環(huán)境。數(shù)據(jù)環(huán)境是每一個表單或表單集都包括一個數(shù)據(jù)環(huán)境。數(shù)據(jù)環(huán)境是一個對象,它包括了在運(yùn)行一個表單時需要打開的全部一個對象,它包括了在運(yùn)行一個表單時需要打開的全部表表、視圖視圖和和關(guān)系關(guān)系??梢栽?。可以在“數(shù)據(jù)環(huán)

33、境設(shè)計(jì)器數(shù)據(jù)環(huán)境設(shè)計(jì)器”中可視地設(shè)置數(shù)據(jù)中可視地設(shè)置數(shù)據(jù)環(huán)境,并將它和表單或表單集一起保存。環(huán)境,并將它和表單或表單集一起保存。 1、常用數(shù)據(jù)環(huán)境屬性、常用數(shù)據(jù)環(huán)境屬性 數(shù)據(jù)環(huán)境(續(xù))數(shù)據(jù)環(huán)境(續(xù))2.2.數(shù)據(jù)環(huán)境設(shè)計(jì)器的啟動數(shù)據(jù)環(huán)境設(shè)計(jì)器的啟動方法一:方法一:“顯示顯示”菜單中選擇菜單中選擇“數(shù)據(jù)環(huán)境數(shù)據(jù)環(huán)境”選項(xiàng);選項(xiàng);方法二:方法二:右擊表單空白處,選右擊表單空白處,選“數(shù)據(jù)環(huán)境數(shù)據(jù)環(huán)境”;方法三:方法三:單擊表單設(shè)計(jì)器工具欄中單擊表單設(shè)計(jì)器工具欄中“數(shù)據(jù)環(huán)境數(shù)據(jù)環(huán)境”按鈕。按鈕。3.3.向數(shù)據(jù)環(huán)境中添加表或視圖向數(shù)據(jù)環(huán)境中添加表或視圖:右擊數(shù)據(jù)環(huán)境設(shè)計(jì)器,選:右擊數(shù)據(jù)環(huán)境設(shè)計(jì)器,選“添

34、加添加”。4.4.移去數(shù)據(jù)環(huán)境中的表:移去數(shù)據(jù)環(huán)境中的表:方法同移去數(shù)據(jù)庫表文件方法相同。方法同移去數(shù)據(jù)庫表文件方法相同。5.5.為數(shù)據(jù)環(huán)境設(shè)置關(guān)系為數(shù)據(jù)環(huán)境設(shè)置關(guān)系:建立主表和從表的關(guān)系。:建立主表和從表的關(guān)系。6.6.向表單中添加表字段、表向表單中添加表字段、表:選定表字段或表直接拖到表單上。:選定表字段或表直接拖到表單上。30例例 設(shè)計(jì)一個操作員登錄表單,驗(yàn)證操作員姓名、密碼,如果通過驗(yàn)證,則設(shè)計(jì)一個操作員登錄表單,驗(yàn)證操作員姓名、密碼,如果通過驗(yàn)證,則進(jìn)入系統(tǒng)。否則,顯示錯誤信息并自動退出進(jìn)入系統(tǒng)。否則,顯示錯誤信息并自動退出Visual FoxPro 系統(tǒng)。系統(tǒng)。因?yàn)楹戏ú僮鲉T的資料

35、都存在表因?yàn)楹戏ú僮鲉T的資料都存在表czy中,所以可以利用它進(jìn)行判斷。中,所以可以利用它進(jìn)行判斷。解:解: (通過實(shí)際操作演示講解通過實(shí)際操作演示講解)(1)建立空白表單并設(shè)置其基本屬性建立空白表單并設(shè)置其基本屬性啟動表單設(shè)計(jì)器,產(chǎn)生一個空表單啟動表單設(shè)計(jì)器,產(chǎn)生一個空表單,設(shè)置其自動居中屬性為設(shè)置其自動居中屬性為.T.。(2)控件的建立與設(shè)置控件的建立與設(shè)置在空白表單上,在空白表單上,2個標(biāo)簽、個標(biāo)簽、 2個文本框和兩個命令按鈕。個文本框和兩個命令按鈕。設(shè)置標(biāo)簽的設(shè)置標(biāo)簽的caption 屬性分別為屬性分別為“姓名姓名”、“密碼密碼”。設(shè)置命令按鈕的設(shè)置命令按鈕的Caption 屬性分別為屬

36、性分別為“確認(rèn)確認(rèn)”和和“取消取消”。設(shè)置設(shè)置form1.caption為為“身份驗(yàn)證身份驗(yàn)證”。設(shè)置設(shè)置text2的的 PasswordChar值為:值為:“*”。Maxlength為為8。返 回圖 15-6 登錄表單31(3)編寫代碼編寫代碼雙擊雙擊“確認(rèn)確認(rèn)”按鈕,進(jìn)入代碼窗口,設(shè)置其按鈕,進(jìn)入代碼窗口,設(shè)置其click事件代碼:事件代碼:xm1=trim(thisform.text1.value) xm1=trim(thisform.text1.value) mm1=trim(thisform.text2.value)mm1=trim(thisform.text2.value)set

37、exac onset exac onuse czyuse czylocate for xm=xm1.and.mm=mm1locate for xm=xm1.and.mm=mm1if found() & if found() & 如果姓名和密碼都對,則釋放表單,進(jìn)入系統(tǒng)如果姓名和密碼都對,則釋放表單,進(jìn)入系統(tǒng) thisform.releasethisform.release clear event clear eventelseelse =messagebox( =messagebox(身份不對,您不能使用本系統(tǒng)!身份不對,您不能使用本系統(tǒng)!,16+0+0,16+0+0,警告!警

38、告!) thisform.release thisform.releasequit & quit & 如果姓名或密碼不對,則退出如果姓名或密碼不對,則退出Visual FozPro Visual FozPro endifendif雙擊雙擊“取消取消”標(biāo)簽,進(jìn)入代碼窗口,設(shè)置其標(biāo)簽,進(jìn)入代碼窗口,設(shè)置其click事件代碼:事件代碼:thisform.releasethisform.releasequitquit返 回5 編輯框編輯框(EditBox)其屬性很多與文本框相同,其屬性很多與文本框相同,比較重要的有:比較重要的有:(1) ReadOnly屬性屬性(2) ScrollBa

39、rs屬性屬性指定編輯框是否具有滾動條。默認(rèn)值為指定編輯框是否具有滾動條。默認(rèn)值為2,包含垂直滾動條,設(shè)為,包含垂直滾動條,設(shè)為0,則無滾動條。則無滾動條。(3) SelStart屬性屬性返回用戶在編輯框中所返回用戶在編輯框中所(要要)選文本的起始點(diǎn)或插入點(diǎn)位置。請注意,編輯框起始位選文本的起始點(diǎn)或插入點(diǎn)位置。請注意,編輯框起始位置的置的SelStart值為值為0,而不是,而不是1。(4) SelLength屬性屬性返回用戶在控件的文本輸入?yún)^(qū)中所返回用戶在控件的文本輸入?yún)^(qū)中所(要要)選定字符的數(shù)目。選定字符的數(shù)目。(5) SelText屬性屬性返回用戶編輯區(qū)內(nèi)選定的文本,若未選定,則返回空串。以

40、上三屬性常配合使用。返回用戶編輯區(qū)內(nèi)選定的文本,若未選定,則返回空串。以上三屬性常配合使用。(6) HideSelection屬性屬性指定當(dāng)編輯框失去焦點(diǎn)指定當(dāng)編輯框失去焦點(diǎn)(沒得到焦點(diǎn)沒得到焦點(diǎn))時,選定文本的顯示狀態(tài)。默認(rèn)值為時,選定文本的顯示狀態(tài)。默認(rèn)值為.T.。例例:(:(P199)“查找查找”按鈕的按鈕的click事件代碼為:事件代碼為:n=AT(example,thisform.edit1.value)if n0 thisform.edit1.selstart=n-1 thisform.edit1.sellength=len(example)else wait windows 沒有

41、相匹配的單詞沒有相匹配的單詞 timeout 1 endif“替換替換”按鈕的按鈕的click事件代碼為:事件代碼為:if thisform.edit1.seltext=example thisform.edit1.seltext=exerciseelse wait windows 沒有選擇需要置換的單詞沒有選擇需要置換的單詞 timeout 1 ENDIF 6.6. 組合框控件組合框控件組合框控件由一個列表框和一組合框控件由一個列表框和一個編輯框組成個編輯框組成. .它主要用于從它主要用于從列表項(xiàng)中選取數(shù)據(jù)并顯示在列表項(xiàng)中選取數(shù)據(jù)并顯示在編輯窗口編輯窗口. .組合框控件的屬性主要包括組合框控

42、件的屬性主要包括: :組組合框的大小、輸出信息字體合框的大小、輸出信息字體的大小及字體風(fēng)格等。的大小及字體風(fēng)格等。例例6.6.設(shè)計(jì)一個包含組合框控件設(shè)計(jì)一個包含組合框控件的表單的表單. .用來控制數(shù)據(jù)表中部用來控制數(shù)據(jù)表中部分?jǐn)?shù)據(jù)的輸入、輸出及編輯分?jǐn)?shù)據(jù)的輸入、輸出及編輯。組合框控件的主要屬性:組合框控件的主要屬性:Controlsource:czy.cxmControlsource:czy.cxmRowsource:czy.xmRowsource:czy.xmRowsourcetype:6-Rowsourcetype:6-字段字段數(shù)據(jù)環(huán)境添加表數(shù)據(jù)環(huán)境添加表組合框控件組合框控件“確定確定”按

43、鈕的按鈕的“clickclick”事件代碼如下:事件代碼如下:locate for locate for alltrim(czy.xm)=alltrim(bo1.value)alltrim(czy.xm)=alltrim(bo1.value)if found()if found() if alltrim(thisform.text1.value)=alltrim(czy.mm) if alltrim(thisform.text1.value)=alltrim(czy.mm) messagebox( messagebox(登錄成功,歡迎進(jìn)入本系統(tǒng)登錄成功,歡迎進(jìn)入本系統(tǒng)) do form e:v

44、fpform1.scx do form e:vfpform1.scxelseelse messagebox( messagebox(密碼不正確密碼不正確! !請重新輸入請重新輸入!,48,!,48,登錄信息登錄信息) thisform.text1.setfocus thisform.text1.setfocus thisform.text1.value= thisform.text1.value= thisform.refresh thisform.refresh endif endif endif endif 7. 微調(diào)控件微調(diào)控件微調(diào)控件可在控件框中輸入一個值微調(diào)控件可在控件框中輸入一個值

45、,或通過按鈕選擇一個值或通過按鈕選擇一個值,其作用是確保數(shù)據(jù)的使用范圍其作用是確保數(shù)據(jù)的使用范圍.一般情況下一般情況下,在系統(tǒng)程序中微調(diào)控件主要用于數(shù)值型數(shù)據(jù)的在系統(tǒng)程序中微調(diào)控件主要用于數(shù)值型數(shù)據(jù)的輸入輸入.微調(diào)控件的屬性主要包括微調(diào)控件的屬性主要包括:KeyBoardHigh value、KeyBoardlow value、Increment和和VALUE。KeyBoardHigh value和和KeyBoardlow value分別表示微調(diào)分別表示微調(diào)控件框中輸入的最大值和最小值;控件框中輸入的最大值和最小值; Increment表示每次單擊表示每次單擊按鈕的增減數(shù);按鈕的增減數(shù); va

46、lue表示微調(diào)控件框中的初始值。表示微調(diào)控件框中的初始值。例例7:設(shè)計(jì)一個包含微調(diào)控件的表單:設(shè)計(jì)一個包含微調(diào)控件的表單8. 復(fù)選框控件(復(fù)選框控件(P200)復(fù)選框用于標(biāo)記一個復(fù)選框用于標(biāo)記一個兩值兩值狀態(tài),只有兩個可能,被選或不選,狀態(tài),只有兩個可能,被選或不選,選中為選中為.T.T.,顯示為對號,顯示為對號( () ),否則為,否則為.F.,.F.,顯示為顯示為空白空白屬性:屬性:ControlSourceControlSource:一般綁定表文件中的邏輯字段。一般綁定表文件中的邏輯字段。VALUE:有三種狀態(tài),當(dāng)值為有三種狀態(tài),當(dāng)值為”0”或或F時時,表示沒有選擇復(fù)選表示沒有選擇復(fù)選框

47、框;當(dāng)值為當(dāng)值為”1”或或T時時,表示選中了復(fù)選框表示選中了復(fù)選框;當(dāng)值為當(dāng)值為”2”或或NULL時時, 復(fù)選框顯示灰色復(fù)選框顯示灰色.例例8:設(shè)計(jì)一個包含復(fù)選框控件的表單設(shè)計(jì)一個包含復(fù)選框控件的表單.9.列表框列表框(ListBox)列表框提供一組條目列表框提供一組條目(數(shù)據(jù)項(xiàng)數(shù)據(jù)項(xiàng)),使,使用戶從中選擇一個或多個條目用戶從中選擇一個或多個條目。一般情況。一般情況下,列表框顯示其中的若干條目,用戶可以通過下,列表框顯示其中的若干條目,用戶可以通過滾動條滾動條瀏覽其他條目。瀏覽其他條目。主要屬性:主要屬性:(1) rowsourcetype 和和 rowsource 屬性屬性rowsource

48、type指明數(shù)據(jù)源的類型,可取表指明數(shù)據(jù)源的類型,可取表6.15中的中的0-9。rowsource指定條目數(shù)據(jù)源。與指定條目數(shù)據(jù)源。與RowSourceType屬性配合使用。取值與屬性配合使用。取值與配合說明如教材表配合說明如教材表6.15 。(2) List屬性屬性 用以存取列表框中數(shù)據(jù)條目的字符串?dāng)?shù)組。用以存取列表框中數(shù)據(jù)條目的字符串?dāng)?shù)組。如讀取列表框中第如讀取列表框中第3條目第條目第1列上的數(shù)據(jù)項(xiàng):列上的數(shù)據(jù)項(xiàng):varvar= =thisform.mylist.listthisform.mylist.list(3,1)(3,1)將第將第3條目第條目第2列上的數(shù)據(jù)項(xiàng)置為列上的數(shù)據(jù)項(xiàng)置為“o

49、k”:thisform.mylist.listthisform.mylist.list(3,2)=(3,2)=“okok”列表框(續(xù))列表框(續(xù))(3) listcount指定列表框中數(shù)據(jù)條目的數(shù)目。指定列表框中數(shù)據(jù)條目的數(shù)目。(4) columncount 指明列表框的列數(shù)。指明列表框的列數(shù)。(5) value返回被選中的條目??梢允菙?shù)值型,也可以是字符性。返回被選中的條目??梢允菙?shù)值型,也可以是字符性。(6) selected是一個邏輯型數(shù)組,記錄某個條目是否被選定。如要知道第是一個邏輯型數(shù)組,記錄某個條目是否被選定。如要知道第3條目是否被選條目是否被選,只需看,只需看thisformmy

50、list.selected(3)的值是否為的值是否為.T.。(7) multiselect能否在列表框中進(jìn)行多重選定。默認(rèn)能否在列表框中進(jìn)行多重選定。默認(rèn)0或或.F.,不允許多重選擇;選,不允許多重選擇;選1或或.T.為為允許。多重選擇的方法是按住允許。多重選擇的方法是按住Ctrl鍵不放鍵不放并單擊。并單擊。應(yīng)用實(shí)例應(yīng)用實(shí)例 例:創(chuàng)建一個如圖所示的兩個列表框,并附有例:創(chuàng)建一個如圖所示的兩個列表框,并附有4 4個按鈕,分別個按鈕,分別能將列表框能將列表框List1List1中選定的一個、多個選或全部選項(xiàng)添加到中選定的一個、多個選或全部選項(xiàng)添加到列表框列表框List2List2中;也能將列表框中

51、;也能將列表框List2List2中選定的一個、多個選中選定的一個、多個選或全部選項(xiàng)移去?;蛉窟x項(xiàng)移去。圖圖1 1選課列表框選課列表框 圖圖2 2選課列表框運(yùn)行結(jié)果選課列表框運(yùn)行結(jié)果設(shè)計(jì)步驟設(shè)計(jì)步驟(1 1)創(chuàng)建一個表單,并將其創(chuàng)建一個表單,并將其CaptionCaption屬性設(shè)置為屬性設(shè)置為“選課選課”;(2 2)在表單中添加兩個標(biāo)簽,并將其在表單中添加兩個標(biāo)簽,并將其CaptionCaption屬性分別設(shè)置為屬性分別設(shè)置為“課程名稱課程名稱”和和“選課名稱選課名稱”;(3 3)在表單添加列表框在表單添加列表框List1List1,其屬性設(shè)置如下:,其屬性設(shè)置如下: MultiSelec

52、t=.T. MultiSelect=.T. &可選擇列表中的多項(xiàng)可選擇列表中的多項(xiàng) RowSource=RowSource=課程課程. .課程名課程名 &列表選項(xiàng)數(shù)據(jù)來自列表選項(xiàng)數(shù)據(jù)來自“課程課程”表的表的“課程名課程名”字段字段 RowSourceType=6 RowSourceType=6 & &字段類型字段類型(4 4)在表單添加列表框在表單添加列表框List2List2,其屬性設(shè)置如下:,其屬性設(shè)置如下: MultiSelect =.T. MultiSelect =.T. &可選擇列表中的多項(xiàng)可選擇列表中的多項(xiàng) RowSourceType=1Ro

53、wSourceType=1 & &值類型。值類型。(5 5)在表單中添加四個命令按鈕,并分別設(shè)置其)在表單中添加四個命令按鈕,并分別設(shè)置其CaptionCaption屬性為:屬性為: 、 、 、 : :將列表框?qū)⒘斜砜騆ist1List1中選定的數(shù)據(jù)項(xiàng)添加到列表框中選定的數(shù)據(jù)項(xiàng)添加到列表框List2List2中,代碼如下:中,代碼如下:FOR n = 1 TO ThisForm.List1.ListCount FOR n = 1 TO ThisForm.List1.ListCount IF ThisForm.List1.Selected(n IF ThisForm.List1.

54、Selected(n) &) &測本項(xiàng)是否被選測本項(xiàng)是否被選 THISFORM.List2.Additem(ThisForm.List1.List(n) THISFORM.List2.Additem(ThisForm.List1.List(n) &若被選,若被選, 則添加到則添加到List2List2 ENDIF ENDIFENDFORENDFOR循環(huán)掃描各數(shù)據(jù)列表項(xiàng),若被選中,則添加到列表框循環(huán)掃描各數(shù)據(jù)列表項(xiàng),若被選中,則添加到列表框List2List2中。中。 :將列表框?qū)⒘斜砜騆ist1List1中全部的數(shù)據(jù)項(xiàng)添加到列表框中全部的數(shù)據(jù)項(xiàng)添加到列表框List2Li

55、st2中,代碼如下:中,代碼如下:THISFORM.List2.ClearTHISFORM.List2.Clear & & 清除清除List2List2中數(shù)據(jù)項(xiàng)中數(shù)據(jù)項(xiàng)FOR n = 1 TO ThisForm.List1.ListCountFOR n = 1 TO ThisForm.List1.ListCount THISFORM.List2.Additem(ThisForm.List1.List(n) THISFORM.List2.Additem(ThisForm.List1.List(n)ENDFORENDFOR先清除先清除List2List2列表數(shù)據(jù)項(xiàng),否則已選的數(shù)據(jù)項(xiàng)

56、就會重復(fù)出現(xiàn)。列表數(shù)據(jù)項(xiàng),否則已選的數(shù)據(jù)項(xiàng)就會重復(fù)出現(xiàn)。:將列表框?qū)⒘斜砜騆ist2List2中選定的數(shù)據(jù)項(xiàng)移去,代碼如下:中選定的數(shù)據(jù)項(xiàng)移去,代碼如下:FOR n = 1 TO ThisForm.List2.ListCountFOR n = 1 TO ThisForm.List2.ListCount IF ThisForm.List2.Selected(n) IF ThisForm.List2.Selected(n) THISFORM.List2.RemoveItem(n) THISFORM.List2.RemoveItem(n) ENDIF ENDIFENDFORENDFOR :將列表框?qū)?/p>

57、列表框List2List2中全部的數(shù)據(jù)項(xiàng)移去,代碼如下:中全部的數(shù)據(jù)項(xiàng)移去,代碼如下:THISFORM.List2.Clear THISFORM.List2.Clear 9. 圖象控件圖象控件圖像可以向表單添加照片、圖畫等圖像可以向表單添加照片、圖畫等,這些圖像只能顯示,不能修改。這些圖像只能顯示,不能修改。 其主要屬其主要屬性是:性是:vStretchStretch:圖像大小的調(diào)節(jié)與控制,當(dāng)屬性的值有多種選項(xiàng)時,編輯框變?yōu)閳D像大小的調(diào)節(jié)與控制,當(dāng)屬性的值有多種選項(xiàng)時,編輯框變?yōu)橄吕斜砜颍渲杏腥缦氯N選擇:下拉列表框,其中有如下三種選擇:0 0 裁減裁減( (默認(rèn)值默認(rèn)值) ),裁減掉圖像

58、大于控件邊框的部分;,裁減掉圖像大于控件邊框的部分;1 1 等比填充,調(diào)整圖象大小以適合控件邊框大小,同時保持圖象的原始比等比填充,調(diào)整圖象大小以適合控件邊框大小,同時保持圖象的原始比例。例。2 2 變比填充。調(diào)整圖象大小以適合控件邊框大小,但是不保持圖象的原始變比填充。調(diào)整圖象大小以適合控件邊框大小,但是不保持圖象的原始比例。比例。vBackStyleBackStyle: : 指定一個對象的背景是否透明,該屬性有兩項(xiàng)選擇:指定一個對象的背景是否透明,該屬性有兩項(xiàng)選擇:0 0 透明。對象后面的任何事物都是可見的。此時,忽略透明。對象后面的任何事物都是可見的。此時,忽略 BackColorBac

59、kColor 屬性。屬性。1 1 ( (默認(rèn)值默認(rèn)值) )不透明。用對象的不透明。用對象的 BackColorBackColor 屬性顏色作背景填充,并隱藏控屬性顏色作背景填充,并隱藏控件后面的顏色或圖形。件后面的顏色或圖形。vPicturePicture:指定顯示的圖像文件或通用字段。指定顯示的圖像文件或通用字段。例例9:設(shè)計(jì)一個包含圖象控件的表單設(shè)計(jì)一個包含圖象控件的表單.6.7容器型控件容器型控件1.命令按鈕組命令按鈕組(commandgroup)命令按鈕組是包含一組命令按鈕的容器控件。既可以對命令組的單個命令進(jìn)行設(shè)置命令按鈕組是包含一組命令按鈕的容器控件。既可以對命令組的單個命令進(jìn)行設(shè)

60、置,又可以作為一組來操作其所含的命令按鈕。要選擇命令組中的某個按鈕,可采用,又可以作為一組來操作其所含的命令按鈕。要選擇命令組中的某個按鈕,可采用兩種方法:兩種方法:從屬性窗口的對象下拉式組合框中選擇;從屬性窗口的對象下拉式組合框中選擇;右擊命令組,從快捷菜單中選右擊命令組,從快捷菜單中選“編輯編輯”,再選某按鈕。,再選某按鈕。命令組的主要屬性有:命令組的主要屬性有:(1) Buttoncount:指定命令組中命令按鈕的數(shù)目。默認(rèn)值是指定命令組中命令按鈕的數(shù)目。默認(rèn)值是2。該屬性在設(shè)計(jì)和運(yùn)行。該屬性在設(shè)計(jì)和運(yùn)行時可用。除了命令組,還適合于選項(xiàng)組。時可用。除了命令組,還適合于選項(xiàng)組。(2) Buttons:用于存取命令組中各按鈕的數(shù)組。該屬性數(shù)組在創(chuàng)建命令組時建立,:用于存取命令組中各按鈕的數(shù)組。該屬性數(shù)組在

溫馨提示

  • 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

提交評論