




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、本講內(nèi)容 面向?qū)ο蟪绦蛟O(shè)計(jì) 1面向?qū)ο蟪绦蛟O(shè)計(jì)基本概念 1.對(duì)象 VFP中,常用的基類(lèi)對(duì)象共有21個(gè),分為控件類(lèi)與容器類(lèi)兩種。 (1)控件:是表單上顯示數(shù)據(jù)和執(zhí)行操作的基本對(duì)象,例如:命令按鈕、文本框、標(biāo)簽等。 (2)容器:是可以容納其他對(duì)象的對(duì)象。例如:表單集、表單、選項(xiàng)按鈕組、命令按鈕組等。 2.屬性 對(duì)象的屬性用來(lái)表示對(duì)象的特征、狀態(tài)。 3.方法 對(duì)象的方法是對(duì)象內(nèi)定的通用過(guò)程,能使對(duì)象執(zhí)行一個(gè)操作。 4.事件 事件是一種預(yù)先定義的好的特定動(dòng)作,可由用戶(hù)或系統(tǒng)觸發(fā)。 5.事件驅(qū)動(dòng)的工作方式 某事件一旦被觸發(fā),系統(tǒng)就去執(zhí)行該事件對(duì)應(yīng)的過(guò)程,當(dāng)然事件過(guò)程的代碼需要用戶(hù)事先編寫(xiě)好;過(guò)程執(zhí)行完畢
2、,則系統(tǒng)又處于等待狀態(tài)。2容器能包含的對(duì)象表單集表單、工具欄表單頁(yè)框、表格、任何控件頁(yè)框頁(yè)面頁(yè)面表格、任何控件表格表格列表格列標(biāo)頭對(duì)象、除表單、表單集、工具欄、計(jì)時(shí)器和列對(duì)象以外的對(duì)象選項(xiàng)按鈕組選項(xiàng)按鈕命令按鈕組命令按鈕工具欄任何控件、頁(yè)框、容器Container容器任何控件事件觸發(fā)時(shí)機(jī)事件觸發(fā)時(shí)機(jī)Load創(chuàng)建對(duì)象前MouseUp釋放鼠標(biāo)鍵時(shí)Init創(chuàng)建對(duì)象時(shí)MouseDown按下鼠標(biāo)鍵時(shí)Activate對(duì)象激活時(shí)MouseMove拖動(dòng)鼠標(biāo)時(shí)Gotfocus對(duì)象得到焦點(diǎn)時(shí)KeyPress按下并釋放某鍵盤(pán)鍵時(shí)Click單擊鼠標(biāo)左鍵時(shí)Valid對(duì)象失去焦點(diǎn)前DblClick雙擊鼠標(biāo)左鍵時(shí)LostF
3、ocus對(duì)象失去焦點(diǎn)時(shí)InteractiveChange當(dāng)用戶(hù)通過(guò)鍵盤(pán)或鼠標(biāo)改變一個(gè)控件的值時(shí)Unload釋放對(duì)象時(shí) Vfp部分常見(jiàn)事件列表 容器及包含的對(duì)象 3 表單設(shè)計(jì)器的工具 1.表單設(shè)計(jì)器的功能與特點(diǎn): (1)創(chuàng)建表單及表單上的各個(gè)對(duì)象。 (2)修改已有的表單。 (3)操作方便與可視化。 2.表單設(shè)計(jì)工具 可供表單設(shè)計(jì)使用的各要素與工具: (1)表單設(shè)計(jì)器窗口與表單窗口:多數(shù)設(shè)計(jì)工作將在表單窗口中完成。 (2)屬性窗口:可以完成對(duì)象屬性的設(shè)置與修改。 (3)代碼編輯窗口:供用戶(hù)編寫(xiě)事件或方法的程序代碼。 (4)各種工具欄 (5)數(shù)據(jù)環(huán)境設(shè)計(jì)器窗口:為表單創(chuàng)建或修改數(shù)據(jù)環(huán)境。 (6)快捷
4、菜單:不同對(duì)象有不同快捷菜單幫助完成經(jīng)常性工作。 4表單設(shè)計(jì)器 5 1.打開(kāi)表單設(shè)計(jì)器 2.設(shè)置數(shù)據(jù)環(huán)境 (1)數(shù)據(jù)環(huán)境概念 數(shù)據(jù)環(huán)境泛指定義表單或表單集使用的數(shù)據(jù)源,可以是表、視圖和表間關(guān)系。 (2)數(shù)據(jù)環(huán)境設(shè)計(jì)器打開(kāi) 打開(kāi)數(shù)據(jù)環(huán)境設(shè)計(jì)器可使用表單快捷菜單的“數(shù)據(jù)環(huán)境”命令,或選定“顯示”菜單的數(shù)據(jù)環(huán)境命令。 (3)數(shù)據(jù)環(huán)境設(shè)計(jì)器快捷菜單與數(shù)據(jù)環(huán)境菜單 數(shù)據(jù)環(huán)境菜單提供了幾個(gè)命令,具有查看和修改數(shù)據(jù)環(huán)境的功能 添加命令 移去命令 瀏覽命令 例題數(shù)據(jù)環(huán)境的設(shè)置: 選定表單快捷菜單的“數(shù)據(jù)環(huán)境”命令以打開(kāi)數(shù)據(jù)環(huán)境設(shè)計(jì)器。 選定“添加表或視圖”對(duì)話(huà)框的STAFF表,選定“添加”按鈕。 6 3.對(duì)象
5、的添加 在VFP中實(shí)現(xiàn)對(duì)象創(chuàng)建的主要工具是表單控件工具欄。 (1)表單控件工具欄 (2)對(duì)象的創(chuàng)建 (3)字段映象 字段映象:指當(dāng)用戶(hù)打開(kāi)數(shù)據(jù)環(huán)境設(shè)計(jì)器窗口,選定表中的任一字段,將其拖至表單窗口中釋放,將在對(duì)應(yīng)位置產(chǎn)生兩個(gè)對(duì)象,一個(gè)是標(biāo)簽對(duì)象,用來(lái)顯示字段名或字段標(biāo)題;另一個(gè)對(duì)象類(lèi)型則取決定于字段類(lèi)型,字符型、數(shù)值型、日期型等用文本框?qū)ο蟊硎?,邏輯型用?fù)選框表示,備注型用編輯框表示,通用型用ActiveX綁定控件表示。而且該對(duì)象與字段數(shù)據(jù)自動(dòng)實(shí)現(xiàn)數(shù)據(jù)綁定。 所謂數(shù)據(jù)綁定是指將對(duì)象的值與某個(gè)數(shù)據(jù)源聯(lián)系在一起。這樣對(duì)象的值便與數(shù)據(jù)源的值相一致,當(dāng)對(duì)象的值被修改也就意味字段的值被修改,反之也一樣。
6、7對(duì)象的添加: 利用字段映象功能往表單逐個(gè)添加字段對(duì)象。 單擊表單控件工具欄的命令鈕按鈕,單擊表單的對(duì)應(yīng)位置。 (4)四個(gè)輔助按鈕 選定對(duì)象按鈕按鈕鎖定按鈕查看類(lèi) 生成器鎖定按鈕 表單控件工具欄選定對(duì)象文本框命令鈕選項(xiàng)按鈕組組合框圖象Activex綁定控件(oleboundcontrol)分隔符按鈕鎖定微調(diào)控件頁(yè)框形狀查看類(lèi)標(biāo)簽編輯框命令按鈕組復(fù)選框列表框表格計(jì)時(shí)器Activex控件(olecontrol)線條容器超級(jí)鏈接生成器鎖pg定定8 4.調(diào)整控件的位置 5.設(shè)置對(duì)象的屬性 屬性窗口如圖所示,包括對(duì)象組合框、選項(xiàng)卡、屬性設(shè)置框、屬性列表框、屬性說(shuō)明信息。屬性窗口的組成屬性列表框?qū)傩栽O(shè)置框
7、選項(xiàng)卡對(duì)象組合框?qū)傩哉f(shuō)明信息9 6.事件代碼的編寫(xiě) 編寫(xiě)事件代碼先要打開(kāi)代碼編輯窗口,打開(kāi)某對(duì)象代碼編輯窗口的方法有很多種,具體如下: 方法1:雙擊該對(duì)象。 方法2:選定該對(duì)象的快捷菜單的“代碼”命令。 方法3:選定“顯示”菜單的“代碼”命令。 例題事件代碼編寫(xiě):Command1的Click事件代碼編寫(xiě)如下: IF RECNO()1 SKIP -1 THISFORM.REFRESH ELSE MESSAGEBOX(本條記錄是首記錄!) ENDIF 10 7.保存表單 表單設(shè)計(jì)或修改完畢要存盤(pán),存盤(pán)方法如下: 保存表單而不退出表單設(shè)計(jì)器:選擇“文件”菜單“保存”命令,若是新創(chuàng)建的表單要輸入文件名
8、。 保存表單并退出表單設(shè)計(jì)器:按Ctrl+W鍵或單擊表單設(shè)計(jì)器的關(guān)閉按鈕。若是新創(chuàng)建的表單要輸入文件名。 表單文件保存后,將產(chǎn)生擴(kuò)展名為.SCX的表單文件及擴(kuò)展名為.SCT的表單備注文件。 8.執(zhí)行表單 執(zhí)行表單有多種方法,具體如下: 方法1.表單設(shè)計(jì)器未關(guān)閉時(shí),表單快捷菜單的“執(zhí)行表單”命令可運(yùn)行表單。 方法2.用命令DO FORM 表單名 方法3.在項(xiàng)目管理器中選定要執(zhí)行的表單選定“運(yùn)行”按鈕。 11 事件代碼編寫(xiě) VFP的事件代碼由VFP命令、屬性設(shè)置語(yǔ)句、方法與事件的調(diào)用語(yǔ)句構(gòu)成。 12在容器分層結(jié)構(gòu)中引用對(duì)象 1.對(duì)象的容器層次 VFP的對(duì)象分為容器類(lèi)和控件類(lèi),VFP規(guī)定,在容器分層
9、結(jié)構(gòu)中引用對(duì)象必須提供對(duì)象的地址,即指明它相對(duì)于容器分層結(jié)構(gòu)的關(guān)系。圖1是一種可能的嵌套。 2.對(duì)象相對(duì)引用規(guī)則 VFP為了方便在容器分層結(jié)構(gòu)中引用對(duì)象,提供并規(guī)定了一些關(guān)鍵字及引用格式。 (1)引用關(guān)鍵字(圖2) 3.引用格式 引用格式:引用關(guān)鍵字.對(duì)象名.對(duì)象的屬性、事件或方法程序 (1)引用可以是單級(jí)的。例:THIS.Caption (2)引用也可以是多級(jí)的,但要逐級(jí)引用。例:THISFORM.Text1.Caption (3)控件也可引用包含它的容器。例:THIS.PARENT.Caption13關(guān)鍵字引用THIS引用該對(duì)象THISFORM引用包含該對(duì)象的表單THISFORMSET 引
10、用包含該對(duì)象的表單集PARENT引用包含該對(duì)象的直接容器容器嵌套層次 引用關(guān)鍵字 14編程設(shè)置屬性和調(diào)用方法程序 1.編程設(shè)置對(duì)象屬性 設(shè)置格式:對(duì)象名.屬性名=設(shè)置值 例:設(shè)計(jì)如圖所示表單,單擊“值交換”命令按鈕可實(shí)現(xiàn)兩文本框內(nèi)值的交換,單擊“背景交換”命令按鈕可實(shí)現(xiàn)兩文本框背景顏色的交換。表單15 (1)創(chuàng)建表單:FORM1 (2)添加控件:往FORM1中添加兩個(gè)標(biāo)簽控件、兩個(gè)文框控件、兩個(gè)命令按鈕控件。 (3)按表所示為各控件對(duì)象設(shè)置屬性。 (4)編寫(xiě)命令按鈕的事件代碼 (5) 存盤(pán)并運(yùn)行。16 2.編程調(diào)用對(duì)象方法程序 調(diào)用格式:格式:對(duì)象名.方法程序名(參數(shù)1,參數(shù)2,) (1)Cl
11、s方法 格式:OBJECT.Cls 功能:清除表單上的圖形或文本。 (2)Print方法 格式:OBJECT.Print(cText) 功能:在表單上打印字符串。 例:建立如圖7.8所示表單,單擊“產(chǎn)生3個(gè)隨機(jī)數(shù)”按鈕,會(huì)在表單上顯示3個(gè)0至1之間的隨機(jī)數(shù),單擊“清除”按鈕,將清除表單上顯示的數(shù)據(jù)。 (rand()17 1.事件序列 VFP是事件驅(qū)動(dòng)的工作方式,VFP的事件或者由用戶(hù)動(dòng)作觸發(fā)或者由系統(tǒng)觸發(fā),用戶(hù)的一個(gè)動(dòng)作可能觸發(fā)一個(gè)或多個(gè)事件。這些事件的發(fā)生有一定的次序。 例:表單界面如圖,有一個(gè)命令鈕Command1與一個(gè)文本框Text1,在表單數(shù)據(jù)環(huán)境中有表STAFF.DBF,用戶(hù)的動(dòng)作如
12、下 動(dòng)作1:運(yùn)行表單Form1; Form1.Load() Form1.dataenvironment.cursor1.Init() Form1.dataenvironment.Init() Form1.text1.Init() Fmand1.Init() Form1.Init()18Form1.Activate()Form1.text1.When()Form1.GotFocus()Form1.text1.GotFocus()Form1.Activate()動(dòng)作2:在Text1中輸入字符AB;Form1.text1.KeyPress(65, 0) &即AForm1.text1.Interact
13、iveChange()Form1.text1.KeyPress(66, 0) &即BForm1.text1.InteractiveChange()動(dòng)作3:用戶(hù)單擊Command1關(guān)閉表單;Form1.text1.Valid()19Fmand1.When()Form1.text1.LostFocus()Fmand1.GotFocus()Fmand1.Click()Fmand1.Valid()Fmand1.When() 表單關(guān)閉和釋放對(duì)象之后,將發(fā)生的事件,其次序正好與動(dòng)作1中的事件次序相反。 Form1.Destroy()Fmand1.Destroy()Form1.text1.Destroy()
14、Form1.Unload()Form1.dataenvironment.AfterCloseTables()Form1.dataenvironment.Destroy()Form1.dataenvironment.cursor1.Destroy() 20 2.為事件指定代碼的位置 從上例可知,事件發(fā)生時(shí),若沒(méi)有與之相關(guān)聯(lián)的代碼,不會(huì)發(fā)生任何操作。 3.焦點(diǎn)(Focus) 在上例中有許多的事件發(fā)生都與焦點(diǎn)有關(guān) 4.TAB鍵次序 在表單運(yùn)行時(shí),用戶(hù)可以使用TAB鍵來(lái)移動(dòng)表單內(nèi)光標(biāo)的位置。所謂TAB鍵次序,就是按TAB鍵時(shí)光標(biāo)經(jīng)過(guò)表單中控件的順序。21 用戶(hù)自定義屬性和方法程序 1.用戶(hù)定義屬性 針對(duì)表單和表單集對(duì)象 , VFP允許用戶(hù)向它們添加自定義的屬性,用戶(hù)自定義屬性類(lèi)似于變量。用戶(hù)為某個(gè)表單定義的屬性其作用范圍就是該表單,其作用相當(dāng)于在表單中定義的全局變量;用戶(hù)在表單集中定義的屬性其作用范圍就是該表單集。 自定義屬性分為變量屬性和數(shù)組屬性?xún)煞N。 1.變量屬性 (1)變量屬性的創(chuàng)建 選定“表單”菜單的“新建屬性”命令以
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 設(shè)計(jì)師工資合同協(xié)議
- 購(gòu)買(mǎi)大米糧油合同協(xié)議
- 購(gòu)買(mǎi)花崗巖石材合同協(xié)議
- 賬目結(jié)算協(xié)議書(shū)范本
- 詳細(xì)家政用工合同協(xié)議
- 購(gòu)買(mǎi)油站股份合同協(xié)議
- 解除合同后降價(jià)補(bǔ)償協(xié)議
- 購(gòu)房合同夫妻股份協(xié)議
- 資源互換裝修合同協(xié)議
- 超市供水協(xié)議書(shū)范本
- 演出經(jīng)紀(jì)人員資格備考資料2025
- 2024年陜西高中學(xué)業(yè)水平合格性考試生物試卷真題(含答案)
- 2024《整治形式主義為基層減負(fù)若干規(guī)定》全文課件
- 10S505 柔性接口給水管道支墩
- DZ∕T 0227-2010 地質(zhì)巖心鉆探規(guī)程(正式版)
- GB/T 23858-2009檢查井蓋
- 有限空間作業(yè)安全培訓(xùn)(飼料廠)課件
- 用多種正多邊形鋪設(shè)地面
- 5T橋式起重機(jī)小車(chē)運(yùn)行機(jī)構(gòu)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 結(jié)構(gòu)試驗(yàn)動(dòng)載試驗(yàn)
- 質(zhì)量管理的五大工具和七大方法
評(píng)論
0/150
提交評(píng)論