




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第八章表單設(shè)計(jì)與應(yīng)用第一頁(yè),共四十五頁(yè),2022年,8月28日本章的主要內(nèi)容面向?qū)ο蟮幕靖拍顒?chuàng)建和管理表單表單設(shè)計(jì)器常用表單控件及應(yīng)用(表單示例)第二頁(yè),共四十五頁(yè),2022年,8月28日重點(diǎn):理解面向?qū)ο蟮幕靖拍?,掌握表單常用控件的使用方法。難點(diǎn):面向?qū)ο蟮幕靖拍詈蛢?nèi)容的理解。
常用有關(guān)表單及控件的屬性的設(shè)置和事件代碼的設(shè)計(jì)。
重點(diǎn)和難點(diǎn)第三頁(yè),共四十五頁(yè),2022年,8月28日8.1面向?qū)ο蟮幕靖拍頕oxPro以前的版本中把人機(jī)界面稱為屏幕(screen),相應(yīng)的程序設(shè)計(jì)稱為屏幕設(shè)計(jì)。而在VFP中,把這種界面稱為表單(Form),相應(yīng)的程序設(shè)計(jì)稱為表單設(shè)計(jì)。即表單就是用于處理數(shù)據(jù)的人機(jī)交互界面,是Windows中所能見到的各種對(duì)話框和窗口。但它又不是一個(gè)普通的窗口。表單設(shè)計(jì)是面向?qū)ο蠹夹g(shù)的具體應(yīng)用。第四頁(yè),共四十五頁(yè),2022年,8月28日一、面向?qū)ο蟮幕靖拍顚?duì)象是對(duì)現(xiàn)實(shí)世界中事物或?qū)嶓w的抽象。具體地說(shuō),對(duì)象就是表單、控件、數(shù)據(jù)庫(kù)、表、關(guān)聯(lián)的統(tǒng)稱。它可以是單個(gè)的對(duì)象,如命令按鈕、文本框、編輯框等,也可以是容納多個(gè)其它對(duì)象的容器類對(duì)象,如表單、命令按鈕組、選項(xiàng)框等。每一個(gè)對(duì)象都有一系列的屬性、事件和方法。第五頁(yè),共四十五頁(yè),2022年,8月28日對(duì)象的屬性、事件和方法屬性(property)一般指對(duì)象的外觀特征,如對(duì)象的名稱(Name)、標(biāo)題(Caption)、字體(FontName)等。它們對(duì)應(yīng)于屬性窗口中的“數(shù)據(jù)”、“布局”和“其它”三張選項(xiàng)卡??梢宰饔脙煞N方法設(shè)置對(duì)象的屬性:進(jìn)行表單設(shè)計(jì)時(shí),在屬性窗口中直接設(shè)置編程時(shí)用程序代碼進(jìn)行設(shè)置。格式:對(duì)象名.屬性名=新設(shè)置的屬性名事件(Event)是在某個(gè)對(duì)象上可以發(fā)生的事件的歸納,是由VFP預(yù)先設(shè)置好的能被對(duì)象所識(shí)別的動(dòng)作。如Click單擊事件、DblClick雙擊事件、Load裝載事件。對(duì)象的事件是由系統(tǒng)規(guī)定好的,用戶不能創(chuàng)建新的事件。VFP應(yīng)用程序設(shè)計(jì)的主要工作就是編寫對(duì)象事件過(guò)程中的程序代碼。第六頁(yè),共四十五頁(yè),2022年,8月28日方法(mehtod)是附屬于對(duì)象的行為和動(dòng)作。當(dāng)某個(gè)事件發(fā)生,對(duì)象就應(yīng)當(dāng)對(duì)某個(gè)事件做出響應(yīng)(Respond),執(zhí)行相關(guān)處理程序或處理過(guò)程。對(duì)象用于某個(gè)事件的處理程序或過(guò)程就叫做方法,它是一段程序代碼,可由系統(tǒng)預(yù)先定義,也可以由用戶自己編寫。事件和方法的關(guān)系都是為了完成某個(gè)任務(wù)。但同一個(gè)事件可完成不同的任務(wù),由所編寫的事件過(guò)程中的代碼所決定。比如,同樣是命令按鈕,“開始”和“退出”在按下后所產(chǎn)生的效果完全不同。而方法是固定的,對(duì)之進(jìn)行的調(diào)用都是完成同一個(gè)任務(wù)。調(diào)用對(duì)象方法的格式為:對(duì)象名.方法名第七頁(yè),共四十五頁(yè),2022年,8月28日類(Class)對(duì)對(duì)象的抽象描述。正如一類對(duì)象的模板。和對(duì)象的關(guān)系類是對(duì)象的抽象描述,對(duì)象是類的實(shí)例,即對(duì)象是類的一個(gè)具體應(yīng)用。如電話和手機(jī)的關(guān)系就是類和對(duì)象的關(guān)系。子類和繼承在面向?qū)ο蟮姆椒ɡ?,繼承是指在基于現(xiàn)有的類創(chuàng)建新類時(shí),新類繼承了現(xiàn)有類里的方法和屬性。此外,可以為新類添加新的方法和屬性。我們把新類稱為現(xiàn)有類的子類,而把現(xiàn)有類稱為新類的父類。
一個(gè)子類的成員一般包括:從其父類繼承的屬性和方法由子類自己定義的屬性和方法第八頁(yè),共四十五頁(yè),2022年,8月28日二、面向?qū)ο蟮某绦蛟O(shè)計(jì)(OOP)就是抽象對(duì)象、設(shè)置屬性、控制事件和方法。也就是將現(xiàn)實(shí)世界的實(shí)體或事物抽象成系統(tǒng)中的一個(gè)封裝好的對(duì)象,或VFP中已封裝好的工具或控件,用一組數(shù)據(jù)(屬性)描述它的特征,并且支持一組施加的操作(事件和方法)。如打電話。電話的顏色、大小等都是它的屬性;當(dāng)我們拿起話筒就發(fā)生了“拿起話筒”事件,正常情況下會(huì)進(jìn)入“等待撥號(hào)”的處理過(guò)程。當(dāng)開始撥號(hào)時(shí)又發(fā)生了“撥號(hào)”事件,系統(tǒng)立刻進(jìn)入“號(hào)碼檢查”處理過(guò)程,如果號(hào)碼正確,則進(jìn)入“連接”處理過(guò)程,否則返回“號(hào)碼不正確”的提示信息。面向?qū)ο蟮某绦蛟O(shè)計(jì)與此過(guò)程類似第九頁(yè),共四十五頁(yè),2022年,8月28日8.2VFP基類簡(jiǎn)介VisualFoxPro基類是系統(tǒng)本身內(nèi)含的,并不存放在某個(gè)類庫(kù)中。用戶可以基于基類生成所需要的對(duì)象,也可以擴(kuò)展基類創(chuàng)建自己的子類在程序設(shè)計(jì)中,可以使用CREATEOBJECT函數(shù)來(lái)直接生成基于某個(gè)類的對(duì)象。該函數(shù)的格式如下:
CREATEOBJECT(<類名>[,<參數(shù)1>,<參數(shù)2>,……])函數(shù)基于指定的類生成一個(gè)對(duì)象,并返回對(duì)象的引用第十頁(yè),共四十五頁(yè),2022年,8月28日VisualFoxpro基類列表類名含義類名含義ActiveDoc活動(dòng)文檔Label標(biāo)簽CheckBox復(fù)選框Line線條Column(表格)列Listbox列表框ComboBox組合框OlecontrolOLE容器控件CommandButton命令按鈕OleboundcontrolOLE綁定控件CommandGroup命令按鈕組OptionButton選項(xiàng)按鈕Container容器Optiongroup選項(xiàng)按鈕組Contorl控件Page頁(yè)Custom定制PageFrame頁(yè)框EditBox編輯框ProjectHook項(xiàng)目掛鉤Form表單Separator分隔符FormSet表單集Shape圖形Grid表格Spinner微調(diào)控件Header(列)標(biāo)頭TextBox文本框HyperLink超級(jí)鏈接Timer定時(shí)器Image圖象ToolBar工具欄第十一頁(yè),共四十五頁(yè),2022年,8月28日對(duì)象屬性訪問(wèn)以及對(duì)象方法調(diào)用的基本格式如下:<對(duì)象引用>.<對(duì)象屬性><對(duì)象引用>.<對(duì)象方法>[(參數(shù)列表)]第十二頁(yè),共四十五頁(yè),2022年,8月28日容器與控件
VisualFoxPro中的類一般可分為兩種類型:容器類和控件類。相應(yīng)地,可分別生成容器(對(duì)象)和控件(對(duì)象)。容器可以被認(rèn)為是一種特殊的控件,它能包容其他的控件或容器。控件是一個(gè)可以以圖形化的方式顯示出來(lái),并能與用戶進(jìn)行交互的對(duì)象,控件類不能包含其它對(duì)象。(1)絕對(duì)引用:從最高容器開始逐層向下直到某個(gè)對(duì)象為止的引用稱為絕對(duì)引用
(2)相對(duì)引用:從正在為編寫事件代碼的對(duì)象出發(fā),通過(guò)逐層向高一層或低一層直到另一對(duì)象的引用稱為相對(duì)引用
相對(duì)引用常用到下表所列屬性或關(guān)鍵字
第十三頁(yè),共四十五頁(yè),2022年,8月28日屬性或關(guān)鍵字引用Parent當(dāng)前對(duì)象的直接容器對(duì)象This當(dāng)前對(duì)象ThisForm當(dāng)前對(duì)象所在的表單ThisFormSet當(dāng)前對(duì)象所在的表單集第十四頁(yè),共四十五頁(yè),2022年,8月28日【例】如果Form1中有一個(gè)命令按鈕組commandgroup1,該命令按鈕組有兩個(gè)命令按鈕:command1和command2,label1是表單form1上的一個(gè)標(biāo)簽控件。如果要在命令按鈕command1的事件(如單擊事件)代碼中修改該按鈕的標(biāo)題可用下列命令:this.caption=”確定”如果要在命令按鈕command1的事件代碼中修改command2的標(biāo)題可用下列命令:
thisform.Cmand2.caption="取消"或者mand2.caption="取消"如果要在命令按鈕command1的事件代碼中修改表單的標(biāo)題可用下列命令:
This.Parent.parent.Caption=”測(cè)試窗口”或者
thisform.caption=”測(cè)試窗口”第十五頁(yè),共四十五頁(yè),2022年,8月28日8.3創(chuàng)建和管理表單一、創(chuàng)建和運(yùn)行表單創(chuàng)建表單使用表單向?qū)?chuàng)建即用表單使用表單設(shè)計(jì)器創(chuàng)建、設(shè)計(jì)新的表單或修改已創(chuàng)建的表單。在表單設(shè)計(jì)器環(huán)境下,調(diào)用表單生成器方便、快速地產(chǎn)生表單。執(zhí)行“表單”菜單下的“快速表單”命令單擊“表單設(shè)計(jì)器”工具欄上的“表單生成器”按鈕右擊表單窗口,在彈出的快捷菜單中選擇“生成器”命令。運(yùn)行表單在“項(xiàng)目管理器”窗口運(yùn)行在表單設(shè)計(jì)器環(huán)境下,選擇“表單”菜單中的“執(zhí)行表單”命令或工具欄上的運(yùn)行按鈕選擇“程序”菜單中的“運(yùn)行”命令在命令窗口中輸入:Doform<表單名>第十六頁(yè),共四十五頁(yè),2022年,8月28日二、表單的常用屬性屬性描述默認(rèn)值A(chǔ)lwaysOnTop指定表單是否總是位于其它打開窗口之上.F.AutoCenter居中顯示.F.BackColor指定表單窗口的背景顏色255,255,255BorderStyle指定表單邊框的風(fēng)格。3Caption顯示于表單標(biāo)題欄上的文本Form1Closable決定表單的右上角的關(guān)閉按鈕是否有效.T.DataSession指定表單中的表是在全局能訪問(wèn)的工作區(qū)打開(設(shè)置值為1)還是在表單自己的工作區(qū)打開(設(shè)置值為2)1MaxButton確定表單右上角是否有最大化按鈕.T.MixButton確定表單右上角是否有最小化按鈕.T.Movable確定表單是否能移動(dòng).T.Scrollbars指定表單的滾動(dòng)條類型。可取值為:0(無(wú)),1(水平)2(垂直)3(既水平又垂直)0WindowState指定表單的狀態(tài):0(正常)1(最小化),2(最大化)0WindowType指定表單是模式表單(設(shè)置值為1)還是非模式表單(設(shè)置值為0)。在一個(gè)應(yīng)用程序中,如果運(yùn)行了一個(gè)模式表單,那么在關(guān)閉該表單之前不能訪問(wèn)應(yīng)用程序中的其他表單0第十七頁(yè),共四十五頁(yè),2022年,8月28日常用控件的公共屬性name:控件的名稱,它是代碼中訪問(wèn)控件的標(biāo)識(shí)(表單或表單集除外)。Caption:控件標(biāo)題文本。Fontname:字體名。Fontbold:字體樣式為粗體。Fontsize:字體大小。Fontitalic:字體樣式為斜體。Forecolor:前景色。Height:控件的高度Width:控件的寬度??丶母叨群涂丶膶挾?,也可在設(shè)計(jì)時(shí)通過(guò)鼠標(biāo)拖曳進(jìn)行可視化調(diào)整。Visible:控件是否顯示。Enable:控件運(yùn)行時(shí)是否有效。如果為.T.,則表示控件有效,否則運(yùn)行時(shí)控件不可使用。第十八頁(yè),共四十五頁(yè),2022年,8月28日(2)在“名稱”框中輸入屬性名稱(3)有選擇地在“說(shuō)明”框中輸入新建屬性的說(shuō)明信息向表單添加新屬性的步驟如下:(1)在系統(tǒng)菜單中選擇【表單】|【新建屬性】命令,打開“新建屬性”對(duì)話框,如圖7-13所示。創(chuàng)建和添加新屬性第十九頁(yè),共四十五頁(yè),2022年,8月28日三、VisualFoxPro中常用事件Load:當(dāng)表單或表單集被加載到內(nèi)存中時(shí)發(fā)生的事件。Unload:從內(nèi)存中釋放表單或表單集時(shí)發(fā)生的事件。Init:創(chuàng)建對(duì)象時(shí)發(fā)生的事件。Destroy:從內(nèi)存中釋放對(duì)象時(shí)發(fā)生的事件。Click:鼠標(biāo)左鍵單擊對(duì)象時(shí)發(fā)生的事件。Dbclick:
鼠標(biāo)左鍵雙擊對(duì)象時(shí)發(fā)生的事件。Rightclick:鼠標(biāo)右鍵單擊對(duì)象時(shí)發(fā)生的事件。GotFocus:對(duì)象接收到焦點(diǎn)時(shí)發(fā)生的事件。LostFocus:對(duì)象失去焦點(diǎn)時(shí)發(fā)生的事件。KeyPress:當(dāng)用戶按下或釋放鍵時(shí)發(fā)生的事件。InteractiveChange:以交互方式改變對(duì)象的值時(shí)發(fā)生的事件。ProgrammaticChange:以編程方式改變對(duì)象值時(shí)發(fā)生的事件。第二十頁(yè),共四十五頁(yè),2022年,8月28日四、表單中常用的方法Relase將表單從內(nèi)存中釋放。比如表單有一個(gè)命令按鈕,如果希望單擊該命令按鈕時(shí)關(guān)閉表單,就可以在該命令按鈕的Click事件中包含如下代碼:
ThisForm.Release
表單運(yùn)行時(shí),用戶單擊表單右上角的關(guān)閉按鈕,系統(tǒng)會(huì)自動(dòng)執(zhí)行Relase方法。Refresh
刷新表單。Show顯示表單。該方法將表單的Visible屬性設(shè)置為.T.。Hide隱藏表單。該方法將表單的Visible屬性設(shè)置為.F.。與Relase方法不同,Hide只是把表單隱藏,但并不將表單從內(nèi)存釋放,之后可用Show方法重新顯示表單。第二十一頁(yè),共四十五頁(yè),2022年,8月28日8.4常用表單控件一、標(biāo)簽(Label)控件1.標(biāo)簽控件的功能標(biāo)簽主要用于顯示固定的文本信息。
2.標(biāo)簽控件常用屬性Caption:
指定標(biāo)簽的顯示文本。可以在設(shè)計(jì)時(shí)設(shè)置,也可以在程序運(yùn)時(shí)設(shè)置或修改。Autosise:其值若為真,則標(biāo)簽控件大小由caption屬性的文本內(nèi)容決定。Forecolor:設(shè)置標(biāo)題的字體顏色。Backstyle:設(shè)置標(biāo)簽的背景是否透明,默認(rèn)為不透明。Name:標(biāo)簽對(duì)象的名稱,是程序中訪問(wèn)標(biāo)簽對(duì)象的標(biāo)識(shí)。
注意:在表單中如果不想保留最大化和最小化按鈕,可將表單的MaxButton和MinButton屬性設(shè)置為.F.第二十二頁(yè),共四十五頁(yè),2022年,8月28日二、命令按鈕(CommandButton)控件命令按鈕控件功能命令按鈕主要用來(lái)啟動(dòng)某個(gè)事件代碼、完成特定功能,如關(guān)閉表單、移動(dòng)記錄指針、打印報(bào)表等。主要屬性Default:默認(rèn)值為.F.。如果該屬性設(shè)置為.T.,在該按鈕所在的表單激活的情況下,按Enter,可以激活該按鈕,并執(zhí)行該按鈕的Click事件代碼。一個(gè)表單只能有一個(gè)按鈕的Default屬性為真。Cancel:默認(rèn)值為.F.。如果設(shè)置為.T.,在該按鈕所在的表單激活的情況下,按Esc鍵可以激活該按鈕,并執(zhí)行該按鈕的Click事件代碼。一個(gè)表單只能有一個(gè)按鈕的Cancel屬性為真。Caption:設(shè)置按鈕的標(biāo)題。Enable:確定按鈕是否有效,如果按鈕的屬性Enable為.F.,單擊該按鈕不會(huì)引發(fā)該按鈕的單擊事件。事件:?jiǎn)螕簦–lick)事件第二十三頁(yè),共四十五頁(yè),2022年,8月28日三、命令按鈕組(CommandGroup)控件命令按鈕組功能命令按鈕組是包含一組命令按鈕的容器控件,用戶可以單個(gè)或作為一組來(lái)操作其中的按鈕。
命令按鈕組常用屬性Buttoncount:命令按鈕組中命令按鈕的數(shù)目。Value:默認(rèn)情況下,命令按鈕組中的各個(gè)按鈕被自動(dòng)賦予了一個(gè)編號(hào),如1,2,3,等,當(dāng)運(yùn)行表單時(shí),一旦用戶單擊某個(gè)按鈕,則Value將保存該按鈕的編號(hào),于是在程序中通過(guò)檢測(cè)Value的值,就可以為相應(yīng)的按鈕編寫特定的程序代碼。如果在設(shè)計(jì)時(shí),給Value賦予一個(gè)字符型數(shù)據(jù),當(dāng)運(yùn)行表單時(shí),一旦用戶單擊某個(gè)按鈕,則Value將保存該按鈕的Caption屬性值。Buttons:用于存取命令按鈕組中每個(gè)命令按鈕的數(shù)組,代碼中可以通過(guò)該數(shù)組訪問(wèn)命令按鈕組中的各個(gè)按鈕。第二十四頁(yè),共四十五頁(yè),2022年,8月28日四、文本框(TextBox)控件文本框控件的功能:用于顯示或接收單行文本信息(不設(shè)置ControlSource屬性),默認(rèn)輸入類型為字符型,最大長(zhǎng)度為256個(gè)字符。用于顯示或編輯對(duì)應(yīng)變量或字段的值(設(shè)置ControlSource屬性為已有變量或字段名)。文本框控件常用屬性ControlSource:設(shè)置文本框的數(shù)據(jù)來(lái)源。一般情況下,可以利用該屬性為文本框指定一個(gè)字段或內(nèi)存變量。Value:保存文本框的當(dāng)前內(nèi)容,如果沒(méi)有為ControlSource屬性指定數(shù)據(jù)源,可以通過(guò)該屬性訪問(wèn)文本框的內(nèi)容。它的初值決定文本框中值的類型。如果為ControlSource屬性指定了數(shù)據(jù)源,該屬性值與ControlSource屬性指定的變量或字段的值相同。PassWordChar:設(shè)置輸入口令時(shí)顯示的字符。Readonly:確定文本框是否為只讀,只讀時(shí)其值不可修改。第二十五頁(yè),共四十五頁(yè),2022年,8月28日五、編輯框(EditBox)控件編輯框控件的功能用于顯示或編輯多行文本信息。編輯框?qū)嶋H上是一個(gè)完整的簡(jiǎn)單字處理器。編輯框常用屬性ControlSource:設(shè)置編輯框的數(shù)據(jù)源,一般為數(shù)據(jù)表的備注字段。Value:保存編輯框中的內(nèi)容,可以通過(guò)該屬性來(lái)訪問(wèn)編輯框中的內(nèi)容。SelText:返回用戶在編輯區(qū)內(nèi)選定的文本,如果沒(méi)有選定任何文本,則返回空串。SelLength:返回用戶在文本輸入?yún)^(qū)中所選定字符的數(shù)目。Readonly:確定用戶是否能修改編輯框中的內(nèi)容。Scroolbars:指定編輯框是否具有滾動(dòng)條。第二十六頁(yè),共四十五頁(yè),2022年,8月28日六、復(fù)選框(CheckBox)控件復(fù)選框的功能用于標(biāo)識(shí)一個(gè)兩值狀態(tài),如真(.t.)或假(.f.)。當(dāng)處于“真”狀態(tài)時(shí),復(fù)選框內(nèi)顯示一個(gè)對(duì)勾,當(dāng)處于“假”狀態(tài)時(shí)復(fù)選框內(nèi)為空白。復(fù)選框常用屬性ControlSource屬性:用于指定復(fù)選框的數(shù)據(jù)源Value:用來(lái)指明復(fù)選框的當(dāng)前狀態(tài),如下
屬性說(shuō)明0或.F.(默認(rèn)值),未被選中1或.T.被選中>=2或null不確定,只在代碼中有效第二十七頁(yè),共四十五頁(yè),2022年,8月28日七、選項(xiàng)組(OptionGroup)控件選項(xiàng)組控件的功能選項(xiàng)組又稱為選項(xiàng)按鈕組,是包含選項(xiàng)按鈕的一種容器。一個(gè)選項(xiàng)組中往往包含若干個(gè)選項(xiàng)按鈕,但用戶只能從中選擇一個(gè)按鈕。當(dāng)用戶單擊某個(gè)選項(xiàng)按鈕時(shí),該按鈕即成為被選中狀態(tài),而選項(xiàng)組中的其他選項(xiàng)按鈕,不管原來(lái)是什么狀態(tài),都變?yōu)槲催x中狀態(tài),被選中的選項(xiàng)按鈕中會(huì)顯示一個(gè)圓點(diǎn)。
選項(xiàng)組常用屬性ButtonCount:指定選項(xiàng)組中選項(xiàng)按鈕的數(shù)目。Value:用于指定選項(xiàng)組中哪個(gè)選項(xiàng)按鈕被選中。ControlSource:指定選項(xiàng)組數(shù)據(jù)源。Buttons:用于存取選項(xiàng)組中每個(gè)選項(xiàng)的數(shù)組。第二十八頁(yè),共四十五頁(yè),2022年,8月28日八、列表框(ListBox)控件列表框的功能列表框提供一組條目(數(shù)據(jù)項(xiàng)),用戶可以從中選擇一個(gè)或多個(gè)條目,一般情況下,列表框顯示其中的若干條目,用戶可以通過(guò)滾動(dòng)條瀏覽其他條目。
常用屬性RowSourceType屬性與RowSource屬性:RowSourceType屬性指明列表框數(shù)據(jù)源的類型,RowSource屬性指定列表框的數(shù)據(jù)源,兩者常用的搭配如下表。
ColumnCount屬性:指定列表框的列數(shù)
Value屬性:返回列表框中被選中的條目
ControlSource屬性:該屬性在列表框中的用法與在其他控件中的用法有所不同,在這里,用戶可以通過(guò)該屬性指定一個(gè)字段或變量用以保存用戶從列表框中選擇的結(jié)果
Selected屬性:該屬性是一個(gè)邏輯型數(shù)組,第N個(gè)數(shù)組元素代表第N個(gè)數(shù)據(jù)項(xiàng)是否為選定狀態(tài)
MultiSelect屬性:指定用戶能否在列表框控件內(nèi)進(jìn)行多重選定
第二十九頁(yè),共四十五頁(yè),2022年,8月28日RowSourceType屬性值RowSource屬性0-無(wú)在程序運(yùn)行時(shí),通過(guò)AddItem方法添加列表框條目,通過(guò)RemoveItem方法移去列表框條目無(wú)1-值列出在RowSource屬性中指定所有數(shù)據(jù)項(xiàng)可以是用逗號(hào)隔開的若干數(shù)據(jù)項(xiàng)的集合,例如,在設(shè)計(jì)時(shí),在本屬性框中輸入:北京、上海、長(zhǎng)沙、武漢5-數(shù)組列出數(shù)組的所有元素使用一個(gè)已定義的數(shù)組名。6-字段列出一個(gè)字段的所有值字段名7-文件列出指定目錄的文件清單磁盤驅(qū)動(dòng)器或文件目錄8-結(jié)構(gòu)列出數(shù)據(jù)表的結(jié)構(gòu)表名第三十頁(yè),共四十五頁(yè),2022年,8月28日列表框的應(yīng)用示例【例】:按下圖設(shè)計(jì)一個(gè)表單myform1.scx。要求表單運(yùn)行時(shí),LIST1列表框顯示學(xué)生表的學(xué)號(hào)、姓名、性別、出生日期及入學(xué)成績(jī)字段的內(nèi)容。第三十一頁(yè),共四十五頁(yè),2022年,8月28日操作步驟:①按如圖所示在表單中加入1個(gè)標(biāo)簽控件label1和1個(gè)列表框控件list1。②設(shè)置label1的Caption屬性為:顯示學(xué)生基本情況設(shè)置list1的RowSourceType屬性:3-SQL語(yǔ)句
RowSource屬性:
sele學(xué)號(hào),姓名,性別,出生日期,入學(xué)成績(jī)from學(xué)生③保存表單為myform1.scx,運(yùn)行表單即可。第三十二頁(yè),共四十五頁(yè),2022年,8月28日九、組合框(comboBox)控件組合框與列表框類似,也是用于提供一組條目供用戶從中選擇,組合框和和列表框的主要區(qū)別在于:(1)對(duì)于組合框來(lái)說(shuō),通常只有一個(gè)條目是可見的。用戶可以單擊組合框上的下拉箭頭按鈕打開條目列表,以便從中選擇。(2)組合框不提供多重選擇的功能,沒(méi)有MultiSelect屬性。(3)組合框有兩種形式,與Style屬性的值有關(guān)。下拉組合框(Style屬性為0)和下拉列表框(Style屬性為2)。對(duì)下拉組合框,用戶既可以從列表中選擇,也可以在編輯區(qū)輸入。對(duì)下拉列表框,用戶只可從列表中選擇。第三十三頁(yè),共四十五頁(yè),2022年,8月28日十、表格(Grid)控件表格控件的功能表格控件用于瀏覽或編輯多行多列數(shù)據(jù)。
表格控件常用屬性RecordSourceType指明表格數(shù)據(jù)源的類型。RecordSource屬性指定數(shù)據(jù)的來(lái)源。
ColumnCount:指定表格的列數(shù)LinkMaster:用于指定表格控件中所顯示的子表的父表名稱ChildOrader:指定子表的索引RelationalExpr:確定基于主表字段的關(guān)聯(lián)表達(dá)式AllowAddNew:為真,運(yùn)行時(shí)允許添加新記錄AllowRowSizing:為真,運(yùn)行時(shí)用戶可改變行高。AllowHeaderSizing:為真,運(yùn)行時(shí)用戶可改變列寬。
第三十四頁(yè),共四十五頁(yè),2022年,8月28日常用的列屬性
ControlSource:指定在列中顯示的數(shù)據(jù)源.CurrentControl:指定列對(duì)象中顯示和接收數(shù)據(jù)的控件.Sparse:用于確定CurrentControl屬性影響列中的所有單元格還是只影響活動(dòng)單元格.注意:設(shè)計(jì)時(shí)要設(shè)置列對(duì)象的屬性,選擇列對(duì)象有兩種方法:①?gòu)膶傩源翱诘膶?duì)象列表中選擇相應(yīng)列,②右擊表格,在彈出的快捷菜單中選擇【編輯】命令,這時(shí)表格進(jìn)入編輯狀態(tài)(表格的周圍有一個(gè)粗框),用戶可用鼠標(biāo)單擊選擇列對(duì)象。第三十五頁(yè),共四十五頁(yè),2022年,8月28日常用的標(biāo)頭(Header)屬性
列標(biāo)頭也是一個(gè)對(duì)象,有它自己的屬性、方法和事件,設(shè)計(jì)時(shí)要設(shè)置標(biāo)頭對(duì)象的屬性,首先得選擇標(biāo)頭對(duì)象,選擇標(biāo)頭對(duì)象的方法與選擇列對(duì)象的方法類似。Caption屬性:指定標(biāo)頭對(duì)象的標(biāo)題文本,顯示于列頂部。默認(rèn)為對(duì)應(yīng)字段的字段名。Alignment屬性:指定標(biāo)題文本在對(duì)象中顯示的對(duì)齊方式。第三十六頁(yè),共四十五頁(yè),2022年,8月28日調(diào)整表格的行高和列寬一旦指定了表格的列的具體數(shù)目,就可以有兩種方法來(lái)調(diào)整表格的行高和列寬。①設(shè)置表格的HeaderHeight和RowHeight屬性調(diào)整行高;設(shè)置列對(duì)象的Width屬性調(diào)整列寬。②讓表格處于編輯狀態(tài)下,將鼠標(biāo)指針置于表格兩列的標(biāo)頭之間,這時(shí),鼠標(biāo)指針變?yōu)樗诫p箭頭的形狀,拖動(dòng)鼠標(biāo),調(diào)整列至所需要的寬度;將鼠標(biāo)置于表格左側(cè)的第一個(gè)按鈕和第二個(gè)按鈕之間,這時(shí),鼠標(biāo)指針變成垂直雙箭頭的形狀,拖動(dòng)鼠標(biāo),調(diào)整行至所需要的高度。第三十七頁(yè),共四十五頁(yè),2022年,8月28日使用表格生成器設(shè)計(jì)表格用鼠標(biāo)左鍵右擊表格,在彈出的快捷菜單中選擇【生成器】命令,打開“表格生成器”對(duì)話框,如圖所示?!氨砀耥?xiàng)”選項(xiàng)卡:用于設(shè)置表格內(nèi)顯示字段“樣式”選項(xiàng)卡:指定表格的樣式“關(guān)系”選項(xiàng)卡:設(shè)置一個(gè)一對(duì)多關(guān)系,指明父表中的關(guān)鍵字段與子表中的相關(guān)索引“布局”選項(xiàng)卡:調(diào)整行高、列寬;設(shè)置列標(biāo)題;選擇控件類型第三十八頁(yè),共四十五頁(yè),2022年,8月28日【例】設(shè)計(jì)如圖所示表單,要求按倉(cāng)庫(kù)瀏覽職工信息。第三十九頁(yè),共四十五頁(yè),2022年,8月28日①設(shè)計(jì)數(shù)據(jù)環(huán)境:把倉(cāng)庫(kù)表和職工表加入數(shù)據(jù)環(huán)境,并在倉(cāng)庫(kù)號(hào)之間建立關(guān)系。②打開表格生成器,在“表格項(xiàng)”選項(xiàng)卡中設(shè)置要顯示的職工表中的所有字段,在“關(guān)系”選項(xiàng)卡設(shè)置“父表中的關(guān)鍵字段”為:倉(cāng)庫(kù).倉(cāng)庫(kù)號(hào),“子表中的相關(guān)素引”為:倉(cāng)庫(kù)號(hào)。③組合框?qū)傩栽O(shè)置:
RecordSourceType:6_字段
RowSource:倉(cāng)庫(kù).倉(cāng)庫(kù)號(hào)。④表格屬性設(shè)置:
LINKMASTR:倉(cāng)庫(kù)
CHILDORDER:倉(cāng)庫(kù)號(hào)運(yùn)行表單時(shí),在列表框中選擇一個(gè)倉(cāng)庫(kù)號(hào),表格中就只顯示該倉(cāng)庫(kù)的職工信息。
第四十頁(yè),共四十五頁(yè),2022年,8月28日十一、計(jì)時(shí)器控件(timer)該控件編輯時(shí)可見,運(yùn)行時(shí)不可見。常用屬性Interval:指定調(diào)用計(jì)時(shí)器事件的間隔,以毫秒為單位。主要事件Timer事件經(jīng)過(guò)Interval屬性中設(shè)定的毫秒時(shí)間間隔后發(fā)生。第四十一頁(yè),共四十五頁(yè),2022年,8月28日舉例:建立一個(gè)如下圖所示的表單。在Label1控件顯示數(shù)字時(shí)鐘,單擊“暫?!卑粹o時(shí)鐘暫停計(jì)時(shí);單擊
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 懸疑劇情短視頻定制服務(wù)合同
- 兼職銷售合同糾紛案例分析
- 廣告位互換合同協(xié)議版
- 物流企業(yè)間合作合同樣本
- 股東間合作發(fā)展合同書
- 兼職保密合同模板與范文
- 土地開發(fā)合同范本:施工細(xì)節(jié)
- 4 我們的公共生活 第一課時(shí) 教學(xué)設(shè)計(jì)-2023-2024學(xué)年道德與法治五年級(jí)下冊(cè)統(tǒng)編版
- 10日月潭 教學(xué)設(shè)計(jì)-2024-2025學(xué)年語(yǔ)文二年級(jí)上冊(cè)統(tǒng)編版
- Unit 1 Making friends PartB Let's learn(教學(xué)設(shè)計(jì))-2024-2025學(xué)年人教PEP版(2024)英語(yǔ)三年級(jí)上冊(cè)
- 2025年二級(jí)建造師聘用合同范文(三篇)
- 湖北省2025屆高三T8聯(lián)盟模擬考數(shù)學(xué)試卷(解析版)
- 2025年北京電子科技職業(yè)學(xué)院高職單招職業(yè)技能測(cè)試近5年??及鎱⒖碱}庫(kù)含答案解析
- 2025年包頭輕工職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測(cè)試近5年常考版參考題庫(kù)含答案解析
- 工業(yè)統(tǒng)計(jì)知識(shí)培訓(xùn)
- 中國(guó)高血壓防治指南(2024年修訂版)
- GB/T 4340.1-2024金屬材料維氏硬度試驗(yàn)第1部分:試驗(yàn)方法
- 參保人員就醫(yī)流程doc
- 2019湘美版五年級(jí)《書法練習(xí)指導(dǎo)》下冊(cè)教案
- 東南大學(xué)建筑學(xué)專業(yè)課程設(shè)置
- Q∕CR 562.2-2017 鐵路隧道防排水材料 第2部分:止水帶
評(píng)論
0/150
提交評(píng)論