




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、2022-5-311江蘇科技大學(xué)江蘇科技大學(xué) 經(jīng)濟(jì)管理學(xué)院經(jīng)濟(jì)管理學(xué)院2022-5-312予人以魚予人以魚不如予人以漁不如予人以漁2022-5-313章節(jié)導(dǎo)航章節(jié)導(dǎo)航2022-5-314第第1章章 數(shù)據(jù)庫系統(tǒng)及數(shù)據(jù)庫系統(tǒng)及Visual FoxPro 概述概述返回返回2022-5-3151.1 VFP6.0的開展概述及啟動(dòng)的開展概述及啟動(dòng)1、1986年6月推出了FoxBASE+ 1.0版 2、1987年7月推出了FoxBASE+ 2.0版 3、1988年7月推出了FoxBASE+ 2.1版4、1992年下半年推出了FoxPro 2.5版5、1994年下半年推出了FoxPro 2.6版6、1995
2、年6月推出了Visual FoxPro 3.0 7、1996年8月推出了Visual FoxPro5.0 8、1998年9月推出了Visual FoxPro6.0目前已開展到Visual FoxPro9.0 Beta返回返回2022-5-316Visual FoxPro 6.0 系統(tǒng)啟動(dòng)系統(tǒng)啟動(dòng)返回返回單擊單擊雙擊桌面雙擊桌面快捷方式快捷方式或或2022-5-3171.2 數(shù)據(jù)庫系統(tǒng)的組成數(shù)據(jù)庫系統(tǒng)的組成1應(yīng)用程序應(yīng)用程序1應(yīng)用程序應(yīng)用程序2應(yīng)用程序應(yīng)用程序n數(shù)據(jù)庫數(shù)據(jù)庫管理系統(tǒng)管理系統(tǒng)操作系統(tǒng)操作系統(tǒng)數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng) 返回返回?cái)?shù)據(jù)庫系統(tǒng)的根本組成包括數(shù)據(jù)庫系統(tǒng)的根本組成包括:
3、 :數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理員數(shù)據(jù)庫管理員2022-5-3181.2 數(shù)據(jù)庫系統(tǒng)的組成數(shù)據(jù)庫系統(tǒng)的組成 2用戶程序用戶程序A1工作區(qū)工作區(qū)用戶程序用戶程序A2工作區(qū)工作區(qū)用戶程序用戶程序A3工作區(qū)工作區(qū)用戶程序用戶程序A4工作區(qū)工作區(qū)用戶程序用戶程序A5工作區(qū)工作區(qū)外部模式外部模式A外部模式外部模式B模式模式內(nèi)部模式內(nèi)部模式系統(tǒng)緩沖區(qū)系統(tǒng)緩沖區(qū)操作操作系統(tǒng)系統(tǒng)DBMS數(shù)據(jù)庫數(shù)據(jù)庫數(shù)數(shù)據(jù)據(jù)庫庫管管理理系系統(tǒng)統(tǒng)結(jié)結(jié)構(gòu)構(gòu) 返回返回2022-5-3191.3 數(shù)據(jù)模型數(shù)據(jù)模型ABCD網(wǎng)狀模型:網(wǎng)狀模型: ABCDE層次模型:層次模型: 學(xué)號(hào)學(xué)號(hào)姓名姓名民族民族專業(yè)代號(hào)專業(yè)代號(hào)
4、01404099010140409901張三張三漢漢04010101404099020140409902李四李四漢漢04010101404099030140409903王五王五漢漢04010101404099040140409904趙六趙六回回040101關(guān)系模型:關(guān)系模型: 關(guān)鍵字關(guān)鍵字?jǐn)?shù)據(jù)模型表達(dá)了數(shù)據(jù)的組織形式及數(shù)據(jù)之間的聯(lián)系數(shù)據(jù)模型表達(dá)了數(shù)據(jù)的組織形式及數(shù)據(jù)之間的聯(lián)系. .返回返回2022-5-31101.4 主流主流DBMS產(chǎn)品產(chǎn)品OracleDB2SybaseMS-SQL ServerAccessVisual FoxPro返回返回2022-5-31111.5 Visual FoxP
5、ro概述概述 集成操作環(huán)境集成操作環(huán)境返回返回菜單欄菜單欄工具欄工具欄主窗口主窗口“命令窗命令窗口口狀態(tài)欄狀態(tài)欄2022-5-31121.5 Visual FoxPro概述概述 命令例如命令例如* , &引導(dǎo)注釋內(nèi)容引導(dǎo)注釋內(nèi)容? , ?在在VFP主窗口中顯示表達(dá)式的值主窗口中顯示表達(dá)式的值CLEAR去除當(dāng)前去除當(dāng)前VFP主窗口中的信息主窗口中的信息DIR在在VFP主窗口中顯示文件的目錄主窗口中顯示文件的目錄MD/RD/CD創(chuàng)立文件夾創(chuàng)立文件夾/刪除文件夾刪除文件夾/改變當(dāng)前工作文件夾改變當(dāng)前工作文件夾COPY FILE/RENAME/DELETE FILE復(fù)制復(fù)制/更名更名/刪除文件
6、刪除文件RUN調(diào)用外部調(diào)用外部DOS命令命令QUIT關(guān)閉所有文件關(guān)閉所有文件,并結(jié)束當(dāng)前并結(jié)束當(dāng)前VFP系統(tǒng)的運(yùn)行系統(tǒng)的運(yùn)行USE xs翻開名為翻開名為xs的表文件的表文件COUNT ALL FOR 性別性別=“女女統(tǒng)計(jì)統(tǒng)計(jì)xs中女生的人數(shù)中女生的人數(shù)USE關(guān)閉表文件關(guān)閉表文件Cj ,將其保存在磁盤上,將其保存在磁盤上返回返回2022-5-3113從當(dāng)前記錄開始,按記錄順序從上向下從當(dāng)前記錄開始,按記錄順序從上向下處理,一旦遇到不滿足條件的記錄,就處理,一旦遇到不滿足條件的記錄,就停止搜索并結(jié)束該命令的執(zhí)行停止搜索并結(jié)束該命令的執(zhí)行1.5 Visual FoxPro概述概述 一般語法式一般語法
7、式返回返回 命令動(dòng)詞命令動(dòng)詞 ; 表達(dá)式表表達(dá)式表 ; 范圍范圍 ;FOR 條件條件 ;WHILE 條件條件 ;TO FILE 文件名文件名 /TO PRINTER/TO ARRAY; 數(shù)組名數(shù)組名 /TO 內(nèi)存變量內(nèi)存變量 ;ALL LIKE/EXCEPT 通配符通配符 ;IN 別名別名 計(jì)算機(jī)要完成的操作計(jì)算機(jī)要完成的操作執(zhí)行該命令所操作的結(jié)果參數(shù)執(zhí)行該命令所操作的結(jié)果參數(shù)只對滿足條件的記錄進(jìn)行操作只對滿足條件的記錄進(jìn)行操作操作結(jié)果的輸出去向操作結(jié)果的輸出去向包括或不包括與通包括或不包括與通配符相匹配的文件、配符相匹配的文件、字段或內(nèi)存變量字段或內(nèi)存變量允許在當(dāng)前工作區(qū)操作指允許在當(dāng)前工作
8、區(qū)操作指定工作區(qū)定工作區(qū)ALL/NEXT /RECORD /REST2022-5-31141.5 Visual FoxPro概述概述 常用文件類型常用文件類型返回返回生成的應(yīng)用程序生成的應(yīng)用程序 .app復(fù)合索引復(fù)合索引 .cdx數(shù)據(jù)庫數(shù)據(jù)庫 .dbc .dct .dcx表表 .dbf .fpt報(bào)表報(bào)表.frx .frt標(biāo)簽標(biāo)簽 .lbx .lbt菜單菜單 .mnt .mnx .mpr .mpx內(nèi)存變量內(nèi)存變量 .mem程序程序 .prg .fxp .qpr .qpx工程工程 .pjt .pjx可視類庫可視類庫 .vcx .vct表單表單 .scx .sctRN_123-lyx主文件名主文件名
9、.DBF分隔符分隔符擴(kuò)展名擴(kuò)展名主文件名最長由主文件名最長由10個(gè)個(gè)字符組成,可以大、字符組成,可以大、小寫字母子混合使用小寫字母子混合使用文件命名例如:文件命名例如:2022-5-31151.6 工程管理器工程管理器(1) MODIFY PROJECT 返回返回2022-5-3116返回返回1.6 工程管理器工程管理器(2)創(chuàng)立新文件或?qū)ο髣?chuàng)立新文件或?qū)ο笤谙鄳?yīng)是設(shè)計(jì)器中翻在相應(yīng)是設(shè)計(jì)器中翻開選定項(xiàng)開選定項(xiàng)將已存在且不被當(dāng)前將已存在且不被當(dāng)前工程所管理的文件添工程所管理的文件添加到工程管理器加到工程管理器翻開翻開/關(guān)閉指定的數(shù)據(jù)庫、瀏覽關(guān)閉指定的數(shù)據(jù)庫、瀏覽指定的表、運(yùn)行指定的查詢指定的表、
10、運(yùn)行指定的查詢/表表單單/程序等程序等從工程中移去或刪除從工程中移去或刪除選定項(xiàng)選定項(xiàng)連編一個(gè)工程或應(yīng)用程序連編一個(gè)工程或應(yīng)用程序 折疊折疊/展開工程管理器展開工程管理器選項(xiàng)卡選項(xiàng)卡2022-5-3117小小 結(jié)結(jié)1 1、VFPVFP從從FoxBASEFoxBASE開始開展大致經(jīng)過了十一個(gè)階段。開始開展大致經(jīng)過了十一個(gè)階段。2 2、VFPVFP的使用方法,的使用方法,VFPVFP功能強(qiáng)大,使用簡單。功能強(qiáng)大,使用簡單。3 3、VFPVFP的啟動(dòng)通??梢酝ㄟ^的啟動(dòng)通常可以通過WindowsWindows的開始菜單或桌面快捷方的開始菜單或桌面快捷方式實(shí)現(xiàn)。式實(shí)現(xiàn)。4 4、VFPVFP退出可以通過在
11、命令窗口中執(zhí)行退出可以通過在命令窗口中執(zhí)行QUITQUIT、系統(tǒng)菜單的退出、系統(tǒng)菜單的退出菜單項(xiàng)或主窗口的菜單項(xiàng)或主窗口的“關(guān)閉按鈕實(shí)現(xiàn)。關(guān)閉按鈕實(shí)現(xiàn)。5 5、VFPVFP的文件類型。的文件類型。6 6、應(yīng)掌握、應(yīng)掌握VFPVFP的一些根本概念。的一些根本概念。7 7、VFPVFP的命令構(gòu)成。的命令構(gòu)成。8 8、可以用菜單方式和命令方式創(chuàng)立和翻開工程管理器。、可以用菜單方式和命令方式創(chuàng)立和翻開工程管理器。返回返回2022-5-3118第第2章章 VFP語言根底語言根底返回返回2022-5-31191、字符型數(shù)據(jù)、字符型數(shù)據(jù)Character,簡寫為,簡寫為C2、數(shù)值型數(shù)據(jù)、數(shù)值型數(shù)據(jù)Numer
12、ic,簡寫為,簡寫為N3、邏輯型數(shù)據(jù)、邏輯型數(shù)據(jù)Logic,簡寫為,簡寫為L4、日期型數(shù)據(jù)、日期型數(shù)據(jù)Date,簡寫為,簡寫為D5、日期時(shí)間型數(shù)據(jù)、日期時(shí)間型數(shù)據(jù)DateTime,簡寫為,簡寫為T6、整形數(shù)據(jù)、整形數(shù)據(jù)Integer,簡寫為,簡寫為I7、備注型數(shù)據(jù)、備注型數(shù)據(jù)Memo,簡寫為,簡寫為M8、通用型數(shù)據(jù)、通用型數(shù)據(jù)General,簡寫為,簡寫為G2.1 常用數(shù)據(jù)類型常用數(shù)據(jù)類型返回返回2022-5-31202.2 數(shù)據(jù)存儲(chǔ)容器數(shù)據(jù)存儲(chǔ)容器返回返回2022-5-3121名稱中只能包含字母、下劃線、數(shù)字符號(hào)和漢字符號(hào)名稱中只能包含字母、下劃線、數(shù)字符號(hào)和漢字符號(hào)名稱的開頭只能是字母、漢
13、字或下劃線,不能是數(shù)字名稱的開頭只能是字母、漢字或下劃線,不能是數(shù)字除自由表的字段名、表的索引標(biāo)識(shí)名至多除自由表的字段名、表的索引標(biāo)識(shí)名至多10個(gè)字符,其余名個(gè)字符,其余名稱長度稱長度1128個(gè)字符個(gè)字符應(yīng)防止使用系統(tǒng)保存字應(yīng)防止使用系統(tǒng)保存字例:例:cVar、nVar2、x_2、sum_of_score、nSum_Score、_aver_2x、2_x、num-of-xs、nSum&Score、_aver#gz、use、DO合法合法非法非法名稱命名規(guī)那么名稱命名規(guī)那么返回返回2022-5-3122 一個(gè)不變的數(shù)值或字符串。常量表達(dá)式中包括常一個(gè)不變的數(shù)值或字符串。常量表達(dá)式中包括常量和
14、操作符,但不包含變量,而且計(jì)算結(jié)果總是常值。量和操作符,但不包含變量,而且計(jì)算結(jié)果總是常值。Visual FoxPro支持多種類型的常量,如支持多種類型的常量,如:數(shù)值常量、數(shù)值常量、字符常量、日期常量、邏輯常量、貨幣常量、日期時(shí)字符常量、日期常量、邏輯常量、貨幣常量、日期時(shí)間常量等。間常量等。 2.2.2 常量常量例:例:3.12E-8、$1000 、8*7 、.F. 、08-25-2003 3.1210-8返回返回2022-5-31232.2.3 內(nèi)存變量內(nèi)存變量 返回返回2022-5-3124在賦值的同時(shí)完成了內(nèi)存變量的創(chuàng)立,并確定了在賦值的同時(shí)完成了內(nèi)存變量的創(chuàng)立,并確定了該變量的數(shù)據(jù)
15、類型以及目前變量的值該變量的數(shù)據(jù)類型以及目前變量的值STORE 表達(dá)式表達(dá)式 TO 內(nèi)存變量名表內(nèi)存變量名表 例例:STORE 0 TO a,b將數(shù)值將數(shù)值0賦給變量賦給變量a,bSTORE “張三張三 TO NAME 將字符串將字符串“張三賦給張三賦給NAME 內(nèi)存變量名內(nèi)存變量名 = 表達(dá)式表達(dá)式 例例:A=.T. 將邏輯真值賦給變量將邏輯真值賦給變量AcSoft = “VFP產(chǎn)生一個(gè)字符型變量產(chǎn)生一個(gè)字符型變量1 變量的創(chuàng)立變量的創(chuàng)立返回返回2022-5-31252 控制變量的訪問控制變量的訪問變量只在它的作用域范圍內(nèi)才有效:變量只在它的作用域范圍內(nèi)才有效:LOCAL:定義局部變量定義局
16、部變量訪問變量:訪問變量:PRIVATE:定義私有變量定義私有變量?換行顯示,換行顯示,PUBLIC:定義全局變量定義全局變量?不換行顯示不換行顯示 AA.prgLOCAL aPUBLIC b,cDO bbBB.prgLOCAL dPRIVATE bRETURNa僅在僅在AA.prg中有效中有效,b在全局有效,但在在全局有效,但在AA.prg和和BB.prg中的值不一樣,中的值不一樣,私有的私有的b在在BB.prg及其子及其子程中有用程中有用c在全局有效在全局有效d僅在僅在BB.prg中有效中有效返回返回2022-5-3126SAVE TO FileName ALL LIKE Skeleton
17、 |ALL EXCEPT Skeleton3 保存內(nèi)存變量保存內(nèi)存變量 文件擴(kuò)展名的缺文件擴(kuò)展名的缺省值為省值為 .mem變量名通配符變量名通配符例:例:假設(shè)存在自定義變量假設(shè)存在自定義變量a,b,ab,baSAVE TO v1 將所有內(nèi)存變量保存到將所有內(nèi)存變量保存到v1.mem文件中文件中SAVE TO v2 ALL LIKE ?a* 將所有第一個(gè)字符是任意字符,第二個(gè)字符是將所有第一個(gè)字符是任意字符,第二個(gè)字符是a的內(nèi)存變量保存的內(nèi)存變量保存到到v2.mem文件中,即文件中,即baSAVE TO v3 ALL EXCEPT ?a*將所有第二個(gè)字符不是將所有第二個(gè)字符不是a的內(nèi)存變量保存到
18、的內(nèi)存變量保存到v3.mem文件中,即文件中,即a,b,ab返回返回2022-5-3127RESTORE FROM FileName ADDITIVE 4 恢復(fù)內(nèi)存變量恢復(fù)內(nèi)存變量 保存當(dāng)前內(nèi)存中的內(nèi)存變量,將指定文件中的內(nèi)存變量添加到保存當(dāng)前內(nèi)存中的內(nèi)存變量,將指定文件中的內(nèi)存變量添加到當(dāng)前內(nèi)存變量之后。當(dāng)前內(nèi)存變量之后。 假設(shè)省略假設(shè)省略ADDITIVE選擇項(xiàng),那么內(nèi)存中選擇項(xiàng),那么內(nèi)存中已有的內(nèi)存變量全部釋放,將指定文件中的內(nèi)存變量調(diào)入內(nèi)存已有的內(nèi)存變量全部釋放,將指定文件中的內(nèi)存變量調(diào)入內(nèi)存 。例:例:RESTORE FROM v1此時(shí)內(nèi)存中存在變量此時(shí)內(nèi)存中存在變量a,b,ab,ba
19、RESTORE FROM v2此時(shí)內(nèi)存中存在變量此時(shí)內(nèi)存中存在變量baRESTORE FROM v3 ADDITIVE此時(shí)內(nèi)存中存在變量此時(shí)內(nèi)存中存在變量a,b,ab,ba返回返回2022-5-31282.2.4 數(shù)組數(shù)組 返回返回2022-5-3129 數(shù)組可以為一維數(shù)組或二維數(shù)組。在絕大多數(shù)情況下,數(shù)數(shù)組可以為一維數(shù)組或二維數(shù)組。在絕大多數(shù)情況下,數(shù)組在使用時(shí)必須預(yù)先聲明。組在使用時(shí)必須預(yù)先聲明。1 數(shù)組的聲明數(shù)組的聲明 返回返回DECLAER | DIMENSION | PUBLIC | LOCAL 數(shù)組名數(shù)組名(行數(shù)行數(shù),列數(shù)列數(shù))私有數(shù)組私有數(shù)組私有數(shù)組私有數(shù)組全局?jǐn)?shù)組全局?jǐn)?shù)組局部數(shù)
20、組局部數(shù)組維數(shù)和大小維數(shù)和大小例:例:DECLAER XX4定義一個(gè)一維數(shù)組定義一個(gè)一維數(shù)組XXPUBLIC A(6,3)定義一個(gè)定義一個(gè)6行行3列的一維數(shù)組列的一維數(shù)組ADIMENSION B3,C(2,3)定義一個(gè)一維數(shù)組定義一個(gè)一維數(shù)組B和一個(gè)和一個(gè) 2行行3列的二維數(shù)組列的二維數(shù)組C2022-5-31302 為數(shù)組元素賦值為數(shù)組元素賦值數(shù)組在聲明之后,每個(gè)數(shù)組元素的默認(rèn)值均為邏輯值數(shù)組在聲明之后,每個(gè)數(shù)組元素的默認(rèn)值均為邏輯值.F.DECLAER XX 6,3XX1,2 = 1113使用數(shù)組名和元素位置為數(shù)組元素賦值使用數(shù)組名和元素位置為數(shù)組元素賦值XX = 1113用一個(gè)語句為所有數(shù)
21、組元素賦相同的值用一個(gè)語句為所有數(shù)組元素賦相同的值 此外,可以使用此外,可以使用SCATTER、GATHER、COPY TO ARRAY 、APPEND FROM ARRAY等命令在數(shù)組元素與表的等命令在數(shù)組元素與表的記錄之間進(jìn)行值的傳遞記錄之間進(jìn)行值的傳遞返回返回2022-5-3131 運(yùn)算符可用于操作同類型數(shù)據(jù),分為:數(shù)值運(yùn)算符、關(guān)系運(yùn)運(yùn)算符可用于操作同類型數(shù)據(jù),分為:數(shù)值運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符、字符運(yùn)算符和日期時(shí)間運(yùn)算符算符、邏輯運(yùn)算符、字符運(yùn)算符和日期時(shí)間運(yùn)算符 數(shù)值運(yùn)算符數(shù)值運(yùn)算符+ 加加 - 減減* 乘乘/ 除除*或或 乘方乘方% 模運(yùn)算模運(yùn)算 括號(hào)括號(hào)2.3運(yùn)算符運(yùn)算符
22、關(guān)系運(yùn)算符關(guān)系運(yùn)算符 小于小于= 等于等于 # 不等于不等于大于大于 不等于不等于 != 不等于不等于 = 大于或等于大于或等于= 精確等于精確等于 “= “=必須是字符串間的比較,其他的可以為字符串、數(shù)值必須是字符串間的比較,其他的可以為字符串、數(shù)值或日期時(shí)間數(shù)據(jù)間的比較。關(guān)系運(yùn)算產(chǎn)生邏輯結(jié)果或日期時(shí)間數(shù)據(jù)間的比較。關(guān)系運(yùn)算產(chǎn)生邏輯結(jié)果 “ “真或真或“假假 。 返回返回2022-5-3132邏輯運(yùn)算符邏輯運(yùn)算符 AND 邏輯與邏輯與NOT 邏輯非單邊運(yùn)算符邏輯非單邊運(yùn)算符OR 邏輯或邏輯或 !邏輯非單邊運(yùn)算符邏輯非單邊運(yùn)算符字符運(yùn)算符字符運(yùn)算符+ + 字符串精確連接字符串精確連接- - 字
23、符串非精確連接字符串非精確連接$ $ 屬于屬于 查看左邊字符串是否包含在右邊字符串查看左邊字符串是否包含在右邊字符串中中日期時(shí)間運(yùn)算符日期時(shí)間運(yùn)算符+ + 加加- - 減減說明:日期加上數(shù)值得到將來的日期;日期減去數(shù)說明:日期加上數(shù)值得到將來的日期;日期減去數(shù)值得到過去的日期;兩日期相減得到兩個(gè)日期相值得到過去的日期;兩日期相減得到兩個(gè)日期相差的天數(shù)。差的天數(shù)。 返回返回2022-5-31332.4 函數(shù)函數(shù)函數(shù)是預(yù)先編好的程序代碼,可供用戶或程序調(diào)用。函數(shù)是預(yù)先編好的程序代碼,可供用戶或程序調(diào)用。函數(shù)名函數(shù)名參數(shù)參數(shù)1,參數(shù),參數(shù)2,例:例:?MOD36,10&顯示顯示6?MAX6,
24、9&顯示顯示9?SUBSTRHello world, 7,5&顯示顯示world?YEARDATE&顯示顯示2003?STR123.456,5,2 &顯示顯示123.4MESSAGEBOXHi!,A&顯示標(biāo)題顯示標(biāo)題為為A內(nèi)內(nèi)容為容為Hi!的!的對話框?qū)υ捒騇OD(a,b) = a-INT(a/b)-IIF(a/b MOD3,2x = “OFFSET TALK &x即即SET TALK OFF,不可,不可SET TALK (x)返回返回2022-5-31352.6 空值空值NULLNULL值不是一種數(shù)據(jù)類型,它值不是一種數(shù)據(jù)類型,它0 0、空字符
25、串、空字符串或空格不同,表示什么都沒有,排序優(yōu)先于其他數(shù)據(jù),或空格不同,表示什么都沒有,排序優(yōu)先于其他數(shù)據(jù),NULLNULL值會(huì)影響命令、函數(shù)、邏輯表達(dá)式和參數(shù)的行為。值會(huì)影響命令、函數(shù)、邏輯表達(dá)式和參數(shù)的行為。NULLNULL不是一種數(shù)據(jù)類型,當(dāng)給字段或變量賦不是一種數(shù)據(jù)類型,當(dāng)給字段或變量賦.NULL.NULL.時(shí),該字段或變量的數(shù)據(jù)類型不變,只是值變時(shí),該字段或變量的數(shù)據(jù)類型不變,只是值變?yōu)闉?NULL.NULL.。 針對針對NULLNULL值時(shí),值時(shí),ISBLANKISBLANK、ISDIGIT()ISDIGIT()、ISLOWER()ISLOWER()、ISUPPER()ISUPPE
26、R()、ISALPHA()ISALPHA()和和ISEMPTY()ISEMPTY()返回返回“假假.F.F.,而,而ISNULLISNULL返回返回“真真.T.T.。 返回返回2022-5-31362.7 程序設(shè)計(jì)根底程序設(shè)計(jì)根底返回返回2022-5-3137 程序是為完成某一具體任務(wù)而編寫的一系列指令。程序是為完成某一具體任務(wù)而編寫的一系列指令。VFP程程序由一系列代碼組成,代碼可以包括以命令形式出現(xiàn)的指令、序由一系列代碼組成,代碼可以包括以命令形式出現(xiàn)的指令、函數(shù)或函數(shù)或VFP可以理解的任何操作??梢岳斫獾娜魏尾僮鳌?chuàng)立程序的方法有:創(chuàng)立程序的方法有:1、通過、通過“文件菜單中的文件菜單中
27、的“新建命令新建命令2.7.1 創(chuàng)立與運(yùn)行程序創(chuàng)立與運(yùn)行程序2、利用工程管理器創(chuàng)立程序文件、利用工程管理器創(chuàng)立程序文件選擇選擇“程序選項(xiàng),然后單擊程序選項(xiàng),然后單擊“新建文件按鈕翻開程序編新建文件按鈕翻開程序編輯窗口輯窗口在在“代碼選項(xiàng)卡選擇代碼選項(xiàng)卡選擇“程序選項(xiàng),然后單擊程序選項(xiàng),然后單擊“新建按鈕翻開程序編新建按鈕翻開程序編輯窗口輯窗口輸入程序代碼,輸入程序代碼,并保存即可并保存即可3、在命令窗口中通過命令翻開程序編輯窗口、在命令窗口中通過命令翻開程序編輯窗口MODIFY COMMAND FIleName | ? 運(yùn)行程序的方法有:運(yùn)行程序的方法有:1、當(dāng)程序處于、當(dāng)程序處于VFP編輯窗
28、口時(shí),單擊編輯窗口時(shí),單擊“常用常用”工具欄上的工具欄上的 按按鈕鈕2、在工程管理器中選擇程序文件,單擊、在工程管理器中選擇程序文件,單擊“運(yùn)行按鈕運(yùn)行按鈕3、在命令窗口中使用、在命令窗口中使用DO命令命令DO ProgramName WITH ParameterList 返回返回2022-5-3138VFP的程序結(jié)構(gòu)可以分為三種:順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。的程序結(jié)構(gòu)可以分為三種:順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。1、順序結(jié)構(gòu)、順序結(jié)構(gòu)按照順序依次執(zhí)行程序中的命令,按照順序依次執(zhí)行程序中的命令,例:例: STORE 4.12 TO ps = p * p * 3.14?圓的面積為:圓的面積為:
29、,s2、分支結(jié)構(gòu)、分支結(jié)構(gòu)包括單條件分支結(jié)構(gòu)和多條件分支結(jié)構(gòu)包括單條件分支結(jié)構(gòu)和多條件分支結(jié)構(gòu)單條件分支結(jié)構(gòu):單條件分支結(jié)構(gòu):IF lExpression THEN Commands1 ELSE Commands2 ENDIF2.7.2 程序結(jié)構(gòu)程序結(jié)構(gòu)返回返回例:例: x = 9IF x 10 THEN ? x ELSE x = x + 1 ENDIF2022-5-3139多條件分支語結(jié)構(gòu):多條件分支語結(jié)構(gòu):DO CASE CASE lExpression1 Commands1 CASE lExpression2 Commands2 CASE lExpressionN CommandsN O
30、THERWISE Commands ENDCASE 該語句從第一各該語句從第一各CASE開始,開始,判斷其后條件表達(dá)式的值是否判斷其后條件表達(dá)式的值是否為為.T. ,當(dāng)遇到第一各結(jié)果為,當(dāng)遇到第一各結(jié)果為.T.的的CASE表達(dá)式時(shí),就執(zhí)行它后表達(dá)式時(shí),就執(zhí)行它后面的命令組,然后跳過下一個(gè)面的命令組,然后跳過下一個(gè)CASE到到ENDCASE之間的所有之間的所有語句。當(dāng)包含語句。當(dāng)包含OTHERWISE語語句時(shí),當(dāng)所有句時(shí),當(dāng)所有CASE表達(dá)式的值表達(dá)式的值都為都為.F.時(shí),執(zhí)行時(shí),執(zhí)行OTHERWISE后面的命令組。后面的命令組。返回返回2022-5-3140例例:根據(jù)一元二次方程的系數(shù)根據(jù)一元
31、二次方程的系數(shù)a,b,c判斷方程根的情況:判斷方程根的情況: delta = b*b 4*a*cDO CASE CASE delta 0? “方程有兩個(gè)不等的實(shí)數(shù)根:方程有兩個(gè)不等的實(shí)數(shù)根:?-b + SQRT(delta)/(2*a)?-b - SQRT(delta)/(2*a) CASE delta = 0 ? “方程有兩個(gè)不等的實(shí)數(shù)根:方程有兩個(gè)不等的實(shí)數(shù)根: ? b/(2*a) CASE delta 0 ? “方程有兩個(gè)復(fù)根:方程有兩個(gè)復(fù)根:real_part = -b/(2*a)&實(shí)部實(shí)部 img_part = SQRT(-delta)/(2*a)&虛部虛部?ALLT
32、RIM(STR(real_part)+ ALLTRIM(STR(img_part)+i?ALLTRIM(STR(real_part)+-+ ALLTRIM(STR(img_part)+iENDCASE 返回返回2022-5-31413、循環(huán)結(jié)構(gòu)、循環(huán)結(jié)構(gòu)有三類命令:基于條件的循環(huán)、基于計(jì)數(shù)的循環(huán)和基于表的循環(huán)有三類命令:基于條件的循環(huán)、基于計(jì)數(shù)的循環(huán)和基于表的循環(huán)1基于條件的循環(huán):基于條件的循環(huán):DO WHILE lExpression CommandsLOOPEXITENDDO 例:例:計(jì)算連續(xù)自然數(shù)之和,并且顯示和剛大于計(jì)算連續(xù)自然數(shù)之和,并且顯示和剛大于1000的最后一個(gè)自的最后一個(gè)自然
33、數(shù)。然數(shù)。 STORE 0 TO AA,BBDO WHILE AA 80 TO a1統(tǒng)計(jì)統(tǒng)計(jì)80分以上人數(shù)分以上人數(shù)AVERAGE cj TO a2 FOR cj 80 統(tǒng)計(jì)統(tǒng)計(jì)80以上平均分以上平均分3.3.7 3.3.7 數(shù)據(jù)的統(tǒng)計(jì)數(shù)據(jù)的統(tǒng)計(jì) 3.3.6 3.3.6 數(shù)據(jù)的復(fù)制數(shù)據(jù)的復(fù)制 返回返回2022-5-3172索引文件有二種:索引文件有二種:獨(dú)立索引獨(dú)立索引文件和文件和復(fù)合索引復(fù)合索引文件,而復(fù)合索引文文件,而復(fù)合索引文件又可分為件又可分為結(jié)構(gòu)復(fù)合索引結(jié)構(gòu)復(fù)合索引文件和非文件和非結(jié)構(gòu)復(fù)合索引結(jié)構(gòu)復(fù)合索引文件兩種。文件兩種。VFP對結(jié)構(gòu)復(fù)合索引文件提供了四種類型:對結(jié)構(gòu)復(fù)合索引文件提
34、供了四種類型:主索引、候選索引、主索引、候選索引、唯一索引、普通索引唯一索引、普通索引結(jié)構(gòu)復(fù)合索引文件的建立結(jié)構(gòu)復(fù)合索引文件的建立INDEX ON eExpression TO TAG TagName FOR lExpression ASCENDING | DESCENDING UNIQUE CANDIDATE 3.4 3.4 表的索引表的索引 返回返回2022-5-3173轉(zhuǎn)轉(zhuǎn)移移焦焦點(diǎn)點(diǎn)1利用表設(shè)計(jì)器的字段選項(xiàng)卡建立索引文件利用表設(shè)計(jì)器的字段選項(xiàng)卡建立索引文件在工程管理器中建立索引在工程管理器中建立索引在在“數(shù)據(jù)選數(shù)據(jù)選項(xiàng)卡中選擇要項(xiàng)卡中選擇要建立索引的表建立索引的表單擊單擊“修改修改按鈕
35、,翻開表按鈕,翻開表設(shè)計(jì)器設(shè)計(jì)器單擊單擊“索索引選項(xiàng)引選項(xiàng)卡卡輸入索引標(biāo)識(shí)輸入索引標(biāo)識(shí)選擇索引類型選擇索引類型輸入索引表達(dá)式輸入索引表達(dá)式也可選擇表達(dá)式也可選擇表達(dá)式生成器進(jìn)行表達(dá)生成器進(jìn)行表達(dá)式的生成式的生成返回返回2022-5-31741 在翻開表時(shí)翻開索引文件在翻開表時(shí)翻開索引文件復(fù)合索引文件在翻開表時(shí)將自動(dòng)被翻開。復(fù)合索引文件在翻開表時(shí)將自動(dòng)被翻開。USE TableName INDEX ASCENDING| DESCENDING 2、翻開表后設(shè)置主控索引、翻開表后設(shè)置主控索引 如果在翻開索引文件時(shí)未指定主控索引,翻開索引文件之后需如果在翻開索引文件時(shí)未指定主控索引,翻開索引文件之后需
36、要指定主控索引,或者希望改變主控索引,可使用下面的命令。要指定主控索引,或者希望改變主控索引,可使用下面的命令。 SET ORDER TO TagName INnWorkArea |cTableAlias ASCENDING | DESCENDING 說明:說明:如果命令中不使用任選項(xiàng),只寫如果命令中不使用任選項(xiàng),只寫SET ORDER TO,那么,那么不會(huì)指定主索引,記錄仍按照記錄號(hào)的順序顯示,但并未關(guān)閉不會(huì)指定主索引,記錄仍按照記錄號(hào)的順序顯示,但并未關(guān)閉索引文件索引文件使用索引使用索引 返回返回2022-5-31753 索引文件的重建或更新索引文件的重建或更新格式:格式:REINDEX
37、功能:重建當(dāng)前翻開的所有索引文件。功能:重建當(dāng)前翻開的所有索引文件。說明:使用說明:使用REINDEX命令之前,必須首先翻開需要重建索引命令之前,必須首先翻開需要重建索引的全部索引文件。對使用包含的全部索引文件。對使用包含UNIQUE關(guān)鍵字的關(guān)鍵字的INDEX命令或命令或SET UNIQUE ON命令創(chuàng)立的索引文件,在重建索引時(shí),仍保命令創(chuàng)立的索引文件,在重建索引時(shí),仍保持持UNIQUE狀態(tài)。狀態(tài)。 4 利用索引快速定位記錄利用索引快速定位記錄格式:格式:SEEK eExpression ORDER TagName ASCENDING | DESCEN-DING IN nWorkArea|cT
38、ableAlias例:例:USE xs ORDER xhSEEK “030102返回返回2022-5-3176小小 結(jié)結(jié)1 1、建立表前要做好準(zhǔn)備,將每個(gè)表的字段名、類型、寬度、建立表前要做好準(zhǔn)備,將每個(gè)表的字段名、類型、寬度、小數(shù)位、等以表格的形式進(jìn)入充分的描述。小數(shù)位、等以表格的形式進(jìn)入充分的描述。2 2、可以通過工程管理器和使用、可以通過工程管理器和使用CREATECREATE命令建立表,也可以命令建立表,也可以通過通過COPY STRUCTURECOPY STRUCTURE命令從其它表中復(fù)制表結(jié)構(gòu),還可命令從其它表中復(fù)制表結(jié)構(gòu),還可以使用以使用CREATECREATE帶帶FROMFRO
39、M子句從一個(gè)表結(jié)構(gòu)文件中得到表結(jié)子句從一個(gè)表結(jié)構(gòu)文件中得到表結(jié)構(gòu)。構(gòu)。3 3、表在使用前要先翻開,表中的記錄可以用、表在使用前要先翻開,表中的記錄可以用APPENDAPPEND、INSERT INTOINSERT INTO等命令進(jìn)行追加,也可以使用等命令進(jìn)行追加,也可以使用DELETEDELETE命令進(jìn)命令進(jìn)行刪除,還可以使用行刪除,還可以使用BROWSEBROWSE命令翻開全屏幕編輯窗口進(jìn)命令翻開全屏幕編輯窗口進(jìn)行修改和瀏覽,可以用行修改和瀏覽,可以用REPLACEREPLACE命令替換數(shù)據(jù)。命令替換數(shù)據(jù)。4 4、在、在USEUSE命令中可以用命令中可以用ININ了句指定工作區(qū),用了句指定工
40、作區(qū),用ALIASALIAS子句指子句指定別名。定別名。5 5、可以使用、可以使用SELECTSELECT命令選擇一個(gè)工作區(qū)。命令選擇一個(gè)工作區(qū)。返回返回2022-5-3177第第4章章 數(shù)據(jù)庫的創(chuàng)立和使用數(shù)據(jù)庫的創(chuàng)立和使用 返回返回2022-5-3178數(shù)據(jù)庫設(shè)計(jì)步驟數(shù)據(jù)庫設(shè)計(jì)步驟 第第1步:確定建立數(shù)據(jù)庫的目的。這有助于確定需要步:確定建立數(shù)據(jù)庫的目的。這有助于確定需要VFP保存哪保存哪些信息;些信息;第第2步:確定需要的表。在明確了建立數(shù)據(jù)庫的目的之后,就可步:確定需要的表。在明確了建立數(shù)據(jù)庫的目的之后,就可以著手把信息分成獨(dú)立的主題,例如以著手把信息分成獨(dú)立的主題,例如“xs學(xué)生或?qū)W生
41、或“cj成績等。每個(gè)主題都可以是數(shù)據(jù)庫中的一個(gè)表。成績等。每個(gè)主題都可以是數(shù)據(jù)庫中的一個(gè)表。第第3步:確定表的字段。確定在每個(gè)表中保存哪些信息。在表中,步:確定表的字段。確定在每個(gè)表中保存哪些信息。在表中,每類信息稱為一個(gè)字段,瀏覽表時(shí)在表中顯示為一列。例如,在每類信息稱為一個(gè)字段,瀏覽表時(shí)在表中顯示為一列。例如,在xs表中,可以有這樣的字段:表中,可以有這樣的字段:“學(xué)號(hào)、學(xué)號(hào)、“姓名、姓名、“性別等。性別等。第第4步:確定表之間的關(guān)系。分析每個(gè)表,確定一個(gè)表中的數(shù)據(jù)步:確定表之間的關(guān)系。分析每個(gè)表,確定一個(gè)表中的數(shù)據(jù)和其它表中的數(shù)據(jù)有何關(guān)系。必要時(shí),可以在表中參加字段或創(chuàng)和其它表中的數(shù)據(jù)有
42、何關(guān)系。必要時(shí),可以在表中參加字段或創(chuàng)立一個(gè)新表來明確關(guān)系。立一個(gè)新表來明確關(guān)系。第第5步:改進(jìn)設(shè)計(jì)。對設(shè)計(jì)進(jìn)一步分析,查找其中的錯(cuò)誤。創(chuàng)立步:改進(jìn)設(shè)計(jì)。對設(shè)計(jì)進(jìn)一步分析,查找其中的錯(cuò)誤。創(chuàng)立表時(shí),在表中參加幾個(gè)例如記錄,看能否從表中得到所需的結(jié)果。表時(shí),在表中參加幾個(gè)例如記錄,看能否從表中得到所需的結(jié)果。 返回返回2022-5-31794.1 VFP數(shù)據(jù)庫概述數(shù)據(jù)庫概述 jxgl數(shù)據(jù)庫數(shù)據(jù)庫xs表表js表表kc表表cj表表rk表表zy表表數(shù)據(jù)庫是一個(gè)容器,數(shù)據(jù)庫是一個(gè)容器,是許多相關(guān)的數(shù)據(jù)庫是許多相關(guān)的數(shù)據(jù)庫表及其關(guān)系的集合。表及其關(guān)系的集合。數(shù)據(jù)庫中的表叫數(shù)據(jù)數(shù)據(jù)庫中的表叫數(shù)據(jù)庫表,不但包
43、括自由庫表,不但包括自由表的各種屬性,還有表的各種屬性,還有一些增強(qiáng)特性。數(shù)據(jù)一些增強(qiáng)特性。數(shù)據(jù)庫中不僅有表,還包庫中不僅有表,還包含有表之間的關(guān)系。含有表之間的關(guān)系。返回返回2022-5-31804.2 數(shù)據(jù)庫的創(chuàng)立數(shù)據(jù)庫的創(chuàng)立 第一步:在項(xiàng)目管理器中選擇【數(shù)據(jù)】選項(xiàng)卡第一步:在項(xiàng)目管理器中選擇【數(shù)據(jù)】選項(xiàng)卡第二步:第二步:單擊單擊“數(shù)數(shù)據(jù)庫據(jù)庫”項(xiàng)項(xiàng)第三步:第三步:單擊項(xiàng)目單擊項(xiàng)目管理器中管理器中的【新建】的【新建】按鈕按鈕第四步:第四步:單擊【新單擊【新建數(shù)據(jù)庫】建數(shù)據(jù)庫】按鈕按鈕第五步:第五步:輸入數(shù)據(jù)輸入數(shù)據(jù)庫名后,庫名后,單擊【保單擊【保存】按鈕存】按鈕返回返回2022-5-318
44、14.3 數(shù)據(jù)庫的使用數(shù)據(jù)庫的使用 語法:語法:翻開數(shù)據(jù)庫:翻開數(shù)據(jù)庫:OPEN DATABASE DatabaseName EXCLUSIVE | SHAREDNOUPDATEVALIDATE設(shè)置當(dāng)前數(shù)據(jù)庫:設(shè)置當(dāng)前數(shù)據(jù)庫:SET DATABASE TO DatabaseName檢查數(shù)據(jù)庫的有效性:檢查數(shù)據(jù)庫的有效性: VALIDATE DATABASE RECOVER TO PRINTER|TO FILE FileName關(guān)閉數(shù)據(jù)庫:關(guān)閉數(shù)據(jù)庫:CLOSE DATABASE例:例:OPEN DATABASE jxgl翻開翻開jxgl數(shù)據(jù)庫數(shù)據(jù)庫OPEN DATABASE hqgl翻開翻開h
45、qgl數(shù)據(jù)庫數(shù)據(jù)庫SET DATABASE TO jxgl設(shè)置設(shè)置jxgl為當(dāng)前數(shù)據(jù)庫為當(dāng)前數(shù)據(jù)庫CLOSE DATABASE關(guān)閉關(guān)閉jxgl數(shù)據(jù)庫數(shù)據(jù)庫返回返回2022-5-3182語法:語法:第一步:第一步:OPEN DATABASE DatabaseName第二步:第二步:CREATE TABLE-SQL系統(tǒng)翻開表設(shè)計(jì)器系統(tǒng)翻開表設(shè)計(jì)器第一步:選擇第一步:選擇【數(shù)據(jù)】選項(xiàng)卡【數(shù)據(jù)】選項(xiàng)卡第二步:單擊第二步:單擊 “表表”選項(xiàng)選項(xiàng)第三步:單擊第三步:單擊【新建】按鈕【新建】按鈕4.4 數(shù)據(jù)庫表數(shù)據(jù)庫表 返回返回2022-5-3183數(shù)據(jù)庫表的字段擴(kuò)展屬性數(shù)據(jù)庫表的字段擴(kuò)展屬性 字段字段顯示
46、顯示屬性屬性字段字段驗(yàn)證驗(yàn)證指定與指定與字段相字段相應(yīng)的控應(yīng)的控件類件類以下屬以下屬性性 不存不存在于自在于自由表設(shè)由表設(shè)計(jì)器中計(jì)器中返回返回2022-5-3184為字段設(shè)置有效性規(guī)那么為字段設(shè)置有效性規(guī)那么語法:語法:CREATE TABLE cj(xh C(6) DEFAULT “030000,kcdh C(6), cj N(3,0);CHECK cj=0 AND cj =0 AND cj =100返回返回2022-5-3185數(shù)據(jù)庫表的表屬性數(shù)據(jù)庫表的表屬性 記錄記錄驗(yàn)證驗(yàn)證插入、插入、更新或更新或刪除記刪除記錄時(shí)進(jìn)錄時(shí)進(jìn)行的檢行的檢驗(yàn)規(guī)那驗(yàn)規(guī)那么么長表名,可通過長表名,可通過CREAT
47、E TABLE 表名表名 NAME 長表名長表名( )定義定義返回返回2022-5-3186為記錄設(shè)置有效性規(guī)那么為記錄設(shè)置有效性規(guī)那么語法:語法:ALTER TABLE xs SET CHECK csrq100=MESSAGEBOX(“輸入的數(shù)字超過上限輸入的數(shù)字超過上限 ,64,“數(shù)字輸入錯(cuò)誤數(shù)字輸入錯(cuò)誤)RETURN 0ENDIF 返回返回2022-5-311602.編輯框編輯框 編輯框編輯框EditBox與文本框相似,但它可以輸入或編輯長與文本框相似,但它可以輸入或編輯長字段或備注字段,允許自動(dòng)換行并能用光標(biāo)移動(dòng)鍵、操作滾動(dòng)條字段或備注字段,允許自動(dòng)換行并能用光標(biāo)移動(dòng)鍵、操作滾動(dòng)條來瀏
48、覽文本。如果將編輯框的來瀏覽文本。如果將編輯框的Control Source屬性設(shè)置為該備注屬性設(shè)置為該備注字段,就可以利用編輯框來顯示或編輯備注字段。編輯框控件的字段,就可以利用編輯框來顯示或編輯備注字段。編輯框控件的ScrollBar屬性決定編輯框是否有垂直的滾動(dòng)條。屬性決定編輯框是否有垂直的滾動(dòng)條。 設(shè)置文本框和編輯框的設(shè)置文本框和編輯框的ReadOnly屬性為屬性為“真真 ,可以顯示,可以顯示那些只能查看而不能修改的信息。如果編輯框無效用戶就不能滾那些只能查看而不能修改的信息。如果編輯框無效用戶就不能滾動(dòng)文本。動(dòng)文本。返回返回2022-5-31161返回返回列表框列表框組合框組合框20
49、22-5-31162填充列表框或組合框填充列表框或組合框通過設(shè)置通過設(shè)置RowSourceType和和RowSource屬性,可以用不同數(shù)據(jù)屬性,可以用不同數(shù)據(jù)源中的項(xiàng)填充列表框。源中的項(xiàng)填充列表框。RowSourceType屬性決定列表框或組合屬性決定列表框或組合框的數(shù)據(jù)源類型,如數(shù)組或表,設(shè)置好框的數(shù)據(jù)源類型,如數(shù)組或表,設(shè)置好RowSourceType后,設(shè)后,設(shè)置置RowSource屬性可指定列表項(xiàng)的數(shù)據(jù)源。屬性可指定列表項(xiàng)的數(shù)據(jù)源。RowSourceType共共有十種類型:有十種類型:0-無,表示沒有,由程序向列表中添加項(xiàng);無,表示沒有,由程序向列表中添加項(xiàng);1-值;值;2-別名;別
50、名;3-SQL語句;語句;4-查詢;查詢;5-數(shù)組;數(shù)組;6-字段;字段;7-文件;文件;8-結(jié)結(jié)構(gòu);構(gòu);9-彈出式菜單見書彈出式菜單見書P204表表8-3。創(chuàng)立具有多列的列表框創(chuàng)立具有多列的列表框假設(shè)要在列表框中顯示多列,可以:假設(shè)要在列表框中顯示多列,可以:將將ColumnCount屬性設(shè)置為所需的列數(shù)。屬性設(shè)置為所需的列數(shù)。設(shè)置設(shè)置ColunWidths屬性。例如,如果列表框中有三列,下面的屬性。例如,如果列表框中有三列,下面的命令將各列寬度分別設(shè)置為命令將各列寬度分別設(shè)置為60、45和和80。THISFORM.LIST1.ColumnWidths=60,45,80將將RowSource
51、Type屬性設(shè)置為屬性設(shè)置為“6-字段。字段。8.2.3 列表框與組合框列表框與組合框 返回返回2022-5-31163 選項(xiàng)按鈕組選項(xiàng)按鈕組OptionGroupOptionGroup包含選項(xiàng)按鈕的容器控件,允包含選項(xiàng)按鈕的容器控件,允許用戶從中選擇一個(gè)按鈕。許用戶從中選擇一個(gè)按鈕。 根據(jù)選項(xiàng)組的根據(jù)選項(xiàng)組的ValueValue屬性可以判斷用戶選定了哪個(gè)按鈕。屬性可以判斷用戶選定了哪個(gè)按鈕。如果按鈕的控件源為數(shù)值型,且組中有五個(gè)按鈕,如果選定了如果按鈕的控件源為數(shù)值型,且組中有五個(gè)按鈕,如果選定了第三個(gè)按鈕,那么選項(xiàng)組的第三個(gè)按鈕,那么選項(xiàng)組的ValueValue屬性值為屬性值為3 3。如果
52、沒有選定選。如果沒有選定選項(xiàng)按鈕,選項(xiàng)組的項(xiàng)按鈕,選項(xiàng)組的ValueValue屬性為屬性為0 0。8.2.4 選項(xiàng)按鈕組選項(xiàng)按鈕組 ButtonCount = 5,即選項(xiàng)按鈕數(shù)目為即選項(xiàng)按鈕數(shù)目為5Value = 3,即用戶選定了第三個(gè)按鈕即用戶選定了第三個(gè)按鈕返回返回2022-5-31164SET FILTER TO xb=男男GO TOPTHISFORM.Refresh SET FILTER TO xb=“女女GO TOPTHISFORM.Refresh SET FILTER TOGO TOPTHISFORM.Refresh 篩選條件是在選篩選條件是在選項(xiàng)按鈕的項(xiàng)按鈕的Click事件事件代
53、碼中設(shè)置的,當(dāng)用代碼中設(shè)置的,當(dāng)用戶選擇選項(xiàng)按鈕時(shí),戶選擇選項(xiàng)按鈕時(shí),執(zhí)行對表格中數(shù)據(jù)進(jìn)執(zhí)行對表格中數(shù)據(jù)進(jìn)行篩選的事件代碼。行篩選的事件代碼。 返回返回2022-5-31165可利用復(fù)選框可利用復(fù)選框CheckBox指定或顯示一個(gè)邏輯狀態(tài)。指定或顯示一個(gè)邏輯狀態(tài)。Caption屬性為屬性為“必修課必修課,Control屬性為屬性為bxk字段字段8.2.5 復(fù)選框復(fù)選框 返回返回2022-5-31166表格表格Grid是一個(gè)按行和列顯示數(shù)據(jù)的容器對象。是一個(gè)按行和列顯示數(shù)據(jù)的容器對象。ColumnCount:設(shè)置表格列數(shù)值即表格列數(shù)。默認(rèn)值:設(shè)置表格列數(shù)值即表格列數(shù)。默認(rèn)值-1表示在表示在運(yùn)行時(shí)
54、,表格將包含與其鏈接的表中字段同樣數(shù)量的列。運(yùn)行時(shí),表格將包含與其鏈接的表中字段同樣數(shù)量的列。Width,Height:設(shè)置列和行對象的高度和寬度的屬性,也可以:設(shè)置列和行對象的高度和寬度的屬性,也可以在設(shè)計(jì)表格時(shí)可視地設(shè)置這些屬性。在設(shè)計(jì)表格時(shí)可視地設(shè)置這些屬性。RecordSourceType :設(shè)置表格中顯示的數(shù)據(jù)源的類型。:設(shè)置表格中顯示的數(shù)據(jù)源的類型。RecordSource:設(shè)置表格中顯示的數(shù)據(jù)源,可以是表、視圖或:設(shè)置表格中顯示的數(shù)據(jù)源,可以是表、視圖或查詢。除為整個(gè)表格設(shè)置數(shù)據(jù)源外,也可以為每個(gè)列單獨(dú)設(shè)置查詢。除為整個(gè)表格設(shè)置數(shù)據(jù)源外,也可以為每個(gè)列單獨(dú)設(shè)置數(shù)據(jù)源:設(shè)置列的數(shù)據(jù)
55、源:設(shè)置列的ControlSource屬性,選擇或輸入作為列的數(shù)屬性,選擇或輸入作為列的數(shù)據(jù)源的別名、表名或字段名。據(jù)源的別名、表名或字段名。AlIowAddNew:為:為“真真.T.時(shí)可以允許用戶向表格中顯示時(shí)可以允許用戶向表格中顯示的表中添加新的記錄。即當(dāng)用戶選中了最后一個(gè)記錄,并且按的表中添加新的記錄。即當(dāng)用戶選中了最后一個(gè)記錄,并且按下光標(biāo)【下光標(biāo)【】鍵時(shí),就向表中添加新記錄?!挎I時(shí),就向表中添加新記錄。DeleteMark:指定在表格控件中是否出現(xiàn)刪除列標(biāo)志,:指定在表格控件中是否出現(xiàn)刪除列標(biāo)志,.T.出現(xiàn)。出現(xiàn)。DynamicFontName,DynamicFontSize,Dyn
56、amicFontColor:用于動(dòng)態(tài)設(shè)置字體、字號(hào)、顏色。用于動(dòng)態(tài)設(shè)置字體、字號(hào)、顏色。8.2.6 表格表格 返回返回2022-5-31167可使用微調(diào)可使用微調(diào)Spinner接受給定范圍的數(shù)據(jù)輸入。接受給定范圍的數(shù)據(jù)輸入。KeyBoardHighValue:指定從鍵盤輸入微調(diào)框的最大值指定從鍵盤輸入微調(diào)框的最大值KeyBoardLowValue:指定從鍵盤輸入微調(diào)框的最小值指定從鍵盤輸入微調(diào)框的最小值SpinnerHighValue:指定通過單擊微調(diào)按鈕輸入的最大值指定通過單擊微調(diào)按鈕輸入的最大值SpinnerLowValue:指定通過單擊微調(diào)按鈕輸入的最小值指定通過單擊微調(diào)按鈕輸入的最小值
57、Increment:指定單擊箭頭時(shí),數(shù)值的增加指定單擊箭頭時(shí),數(shù)值的增加/減少量,默認(rèn)減少量,默認(rèn)1.008.2.7 微調(diào)框微調(diào)框 返回返回2022-5-31168 命令按鈕命令按鈕CommandButton通常用來啟動(dòng)一個(gè)事件以完成通常用來啟動(dòng)一個(gè)事件以完成某種功能。使用命令按鈕組某種功能。使用命令按鈕組CommandGroup控件可創(chuàng)立一控件可創(chuàng)立一組命令按鈕。命令按鈕其主要工作是設(shè)計(jì)其事件的處理代碼組命令按鈕。命令按鈕其主要工作是設(shè)計(jì)其事件的處理代碼. 例如,讓用戶關(guān)閉一個(gè)表單、翻開另一個(gè)表單、在表中瀏覽、例如,讓用戶關(guān)閉一個(gè)表單、翻開另一個(gè)表單、在表中瀏覽、保存或取消編輯、運(yùn)行報(bào)表或查
58、詢以及其他的操作。此時(shí)可借助保存或取消編輯、運(yùn)行報(bào)表或查詢以及其他的操作。此時(shí)可借助命令按鈕或命令按鈕組控件來進(jìn)行。命令按鈕和命令按鈕組的特命令按鈕或命令按鈕組控件來進(jìn)行。命令按鈕和命令按鈕組的特定操作代碼通常放置在命令按鈕的定操作代碼通常放置在命令按鈕的Click事件中。事件中。 將命令按鈕的將命令按鈕的Default屬性設(shè)置為屬性設(shè)置為“真真.T.,那么按,那么按Enter鍵后,將執(zhí)行這個(gè)命令按鈕的鍵后,將執(zhí)行這個(gè)命令按鈕的Click事件。事件。 將命令按鈕的將命令按鈕的Cancle屬性設(shè)置為屬性設(shè)置為“真真.T.,那么按,那么按Esc鍵后,將執(zhí)行這個(gè)命令按鈕的鍵后,將執(zhí)行這個(gè)命令按鈕的C
59、lick事件。事件。8.2.8 命令按鈕與命令按鈕組命令按鈕與命令按鈕組 返回返回2022-5-31169 命令按鈕組包含有兩命令按鈕組包含有兩個(gè)命令按鈕,命令按鈕組個(gè)命令按鈕,命令按鈕組的的Value屬性指明單擊了哪屬性指明單擊了哪個(gè)按鈕。個(gè)按鈕。在其在其Click事件中有如下代事件中有如下代碼:碼:IF THIS.Value = 1 THENAPPEND BLANKELSEDELETEENDIFTHISFORM.RefreshDefault=.T.,Caption=“退出,退出,Enabled=.T.表示能選擇此按鈕,表示能選擇此按鈕,Click事件代碼如下:事件代碼如下:THISFORM
60、.Release注意:如果為組中的某個(gè)命令按鈕的注意:如果為組中的某個(gè)命令按鈕的Click事件編寫了代碼,中事件編寫了代碼,中選擇這個(gè)按鈕時(shí),將執(zhí)行為該按鈕編寫的程序代碼而不執(zhí)行組選擇這個(gè)按鈕時(shí),將執(zhí)行為該按鈕編寫的程序代碼而不執(zhí)行組的的Click事件代碼。事件代碼。 返回返回2022-5-31170計(jì)時(shí)器計(jì)時(shí)器TimerTimer是在應(yīng)用程序中用來處理復(fù)發(fā)事件的控件。是在應(yīng)用程序中用來處理復(fù)發(fā)事件的控件。 8.2.10 線條與形狀線條與形狀 線條(線條(Line)控件用于創(chuàng)建一個(gè)水平線條、豎直線條或?qū)蔷€條。控件用于創(chuàng)建一個(gè)水平線條、豎直線條或?qū)蔷€條。形狀(形狀(Shape)控件用來創(chuàng)建各種形狀圖形,如各種矩形、橢圓或控件用來創(chuàng)建各種形狀圖形,如各種矩形、橢圓或圓。圓
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 購房合同補(bǔ)充協(xié)議范本
- 財(cái)務(wù)管理系統(tǒng)實(shí)施合同
- 農(nóng)業(yè)訂單合同樣本
- 材料供應(yīng)合同書樣本
- 度室內(nèi)裝飾壁畫合同:手繪墻畫服務(wù)協(xié)議
- 農(nóng)業(yè)灌溉合同轉(zhuǎn)讓協(xié)議
- 農(nóng)業(yè)機(jī)械租賃合同(范本7)
- 期貨市場算法交易策略定制服務(wù)考核試卷
- 家禽飼養(yǎng)業(yè)產(chǎn)品質(zhì)量安全追溯體系構(gòu)建考核試卷
- 工業(yè)控制計(jì)算機(jī)在印刷機(jī)械控制中的實(shí)踐考核試卷
- 贏的思考與態(tài)度課件
- 2024年2月國考海關(guān)面試題目及參考答案
- TZSA 158-2023 雙引擎分布式視頻處理器技術(shù)規(guī)范
- 2型糖尿病科普講座課件
- 術(shù)中物品清點(diǎn)不清時(shí)應(yīng)急預(yù)案及流程課件
- 第1課《生存的家園》課件
- 選礦廠三級安全教育課件
- 《座社交恐懼癥》課件
- 豆角綠色防控技術(shù)方案
- 顱腦創(chuàng)傷后顱內(nèi)壓變化規(guī)律分析
- 河北省普通高校專科升本科教育選拔考試英語真題及答案解析
評論
0/150
提交評論