進(jìn)一步研究項(xiàng)目管理知識(shí)分析設(shè)計(jì)方案_第1頁
進(jìn)一步研究項(xiàng)目管理知識(shí)分析設(shè)計(jì)方案_第2頁
進(jìn)一步研究項(xiàng)目管理知識(shí)分析設(shè)計(jì)方案_第3頁
進(jìn)一步研究項(xiàng)目管理知識(shí)分析設(shè)計(jì)方案_第4頁
進(jìn)一步研究項(xiàng)目管理知識(shí)分析設(shè)計(jì)方案_第5頁
已閱讀5頁,還剩78頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 進(jìn)一步研究項(xiàng)目設(shè)計(jì)方案 設(shè)計(jì)程序 制作界面 主要內(nèi)容主要內(nèi)容 各公司對項(xiàng)目設(shè)計(jì)方案再一次仔細(xì)研究,學(xué)生相互探討,相互學(xué)習(xí),設(shè)計(jì)出系統(tǒng)所需界面的版面 進(jìn)一步研究項(xiàng)目設(shè)計(jì)方案進(jìn)一步研究項(xiàng)目設(shè)計(jì)方案返返 回回 在前面各講中,我們主要用菜單和命令菜單和命令方式操作數(shù)據(jù)庫,但是要開發(fā)有實(shí)用價(jià)值的系統(tǒng),必須采用程序設(shè)計(jì)方法程序設(shè)計(jì)方法。Visual FoxPro的程序設(shè)計(jì)包括結(jié)構(gòu)化程序設(shè)計(jì)和面向?qū)ο蟪绦蛟O(shè)計(jì)。前者是傳統(tǒng)的程序設(shè)計(jì)方法,主要用于過程和函數(shù)的編寫,后者借助系統(tǒng)提供的輔助工具實(shí)現(xiàn)界面設(shè)計(jì)。在面向?qū)ο蟪绦蛟O(shè)計(jì)中,需要為對象編寫事件代碼,也要用到結(jié)構(gòu)化程序設(shè)計(jì)的方法。就此而言,結(jié)構(gòu)化程序設(shè)計(jì)是面向

2、對象程序設(shè)計(jì)的基礎(chǔ)。設(shè)計(jì)程序設(shè)計(jì)程序什么是程序什么是程序?程序是能夠完成一定任務(wù)的命令的有序集合。這組命令被存放在稱為程序文件或命令文件的文本文件中。當(dāng)運(yùn)行程序時(shí),系統(tǒng)會(huì)按照一定的次序自動(dòng)執(zhí)行包含在程序文件的命令。程序方式的特點(diǎn)是什么程序方式的特點(diǎn)是什么?可以利用編輯器,方便地輸入、修改和保護(hù)程序;可以用多種方式、多次運(yùn)行程序;可以在一個(gè)程序中調(diào)用另一個(gè)程序。程序與交互操作的區(qū)別是什么程序與交互操作的區(qū)別是什么?交互操作一次只能執(zhí)行一條命令,而程序一次能運(yùn)行多條命令;程序文件一旦編成,即可長期保存并且可多次運(yùn)行,而再次執(zhí)行交互操作需重新輸入命令;程序方式可以完成一些復(fù)雜的任務(wù),而交互操作的功能

3、是有限的。程序中常用的幾條命令1、清除屏幕命令 命令格式:CLEAR 功能:清除屏幕上顯示的信息2、注釋命令 命令格式: NOTE * & 功能:程序的說明性語句,不執(zhí)行 3、允許或不允許系統(tǒng)自動(dòng)顯示提示信息命令 命令格式: Set talk on|off 4、返回語句 命令格式: return 功能:返回系統(tǒng)調(diào)用本程序的位置 程序中常用的幾條命令程序中常用的幾條命令5、INPUT命令 命令格式: INPUT TO 功能:該命令等待用戶從鍵盤輸入數(shù)據(jù),用戶可以輸入 任意合法的表達(dá)式。當(dāng)用戶以回車鍵結(jié)束輸入時(shí),系統(tǒng) 將表達(dá)式的值存入指定的內(nèi)存變量,程序繼續(xù)運(yùn)行。例1、 編寫一個(gè)能計(jì)算任意

4、半徑的圓的周長和面積的程序,程序文件名為LS2.prg。INPUT請輸入圓的半徑: TO RL=2*3.14*RS=3.14*R2?半徑為:+ALLTRIM(STR(R)+的圓的周長和面積如下:程序中常用的幾條命令程序中常用的幾條命令6、ACCEPT命令 命令格式: ACCEPT TO 功能:該命令等待用戶從鍵盤輸入字符串。當(dāng)用戶以回車鍵結(jié)束輸入時(shí),系統(tǒng)將該字符串存人指定的內(nèi)容變量,程序繼續(xù)運(yùn)行。例2、 輸入姓名,在XSQK.DBF表中查詢該姓名對應(yīng)的學(xué)號(hào),程序文件名為cxxh.prg。USE xsqk .dbf accept 請輸入姓名: to xmlocate for 姓名= xm?姓名,

5、學(xué)號(hào)Use程序中常用的幾條命令程序中常用的幾條命令7、WAIT命令命令格式: WAIT TO 功能:該命令顯示字符表達(dá)式之值作為提示信息,暫停程序的執(zhí)行,直到用戶按任意鍵或單擊鼠標(biāo)時(shí)繼續(xù)程序的執(zhí)行。 例3、分屏顯示男、女學(xué)生的情況,程序文件名為waitcx.prg。use xsqk.dbflist for 性別=男wait 按任意鍵顯示女學(xué)生的情況window timeout 15list for 性別=女use程序文件的建立與執(zhí)行程序文件的建立與執(zhí)行以命令方式建立、編輯程序文件 命令格式: MODIFY COMMAND | ?MODIFY FILE | ?ctrl+w存盤ctrl+q放棄存盤

6、放棄存盤例1: 編寫一個(gè)計(jì)算半徑為10米的圓的周長和面積的程序,程序文件名為LS1.prg。R=10R=10L=2L=2* *3.143.14* *R RS=3.14S=3.14* *R2R2?L,S?L,S運(yùn)行程序文件方法方法1 1:菜單方式:菜單方式:程序運(yùn)行,打開“運(yùn)行”對話框從文件列表框中選擇要運(yùn)行的程序文件,并單擊“運(yùn)行”命令按鈕 方法方法2 2:命令方式:命令方式命令格式:DO WITH 注意:DO命令默認(rèn)運(yùn)行.PRG程序, DO命令中的只需輸入主文件名。要運(yùn)行其它程序,中須包括擴(kuò)展名 程序的基本結(jié)構(gòu)-順序結(jié)構(gòu)執(zhí)行過程:按照語句排列的先后順序依次執(zhí)行,即從第一條執(zhí)行到最后一條。 例

7、5、兩數(shù)之和、之差、積ClearInput 請輸入第一個(gè)數(shù)to ainput 請輸入第二個(gè)數(shù) to bS=0S=a+b?”兩個(gè)數(shù)之和為”,s分支結(jié)構(gòu)是在程序執(zhí)行時(shí),根據(jù)不同的條件,選擇執(zhí)行不同的程序語句,用來解決有選擇、有轉(zhuǎn)移的諸多問題。分支結(jié)構(gòu)1IFIF條件語句條件語句 IF IF 1 ELSE ELSE 2 ENDIF ENDIF 原理:首先判斷的邏輯值,若條件為“真”時(shí),執(zhí)行。然后,再執(zhí)行Endif后面的。若條件為“假”時(shí),執(zhí)行Else后面的。然后,再執(zhí)行Endif后面的。分支語句的嵌套分支語句的嵌套對于二分支以上的問題,需要使用分支語句的嵌套或多重分支選擇結(jié)構(gòu)。要求各個(gè)層次的IF語句之

8、間不能交叉,每一層的If、Else以及EndIf必須一一對應(yīng)。 多分支語句多分支語句多分支語句實(shí)現(xiàn)一種擴(kuò)展的選擇結(jié)構(gòu),它可以根據(jù)條件從多組命令中選擇一組執(zhí)行。DO CASECASE CASE CASE ORTHERWISEENDCASE例8、編寫一個(gè)簡單的菜單程序,提供“添加”、“修改”和“打印”三種功能選擇并轉(zhuǎn)入相應(yīng)處理,程序文件名為MCASE.prg。CASE OP=2BROWCASE OP=3WAIT “請準(zhǔn)備好打印機(jī),按任意鍵開始 LIST TO PRINTOTHERWISE?選擇錯(cuò)!ENDCASEUSEuse XSQKCLEARText1.添加2.修改3.打印Endtextinput

9、 請選擇: to opDO CASECASE OP=1APPEND循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)也稱為重復(fù)結(jié)構(gòu),是指程序在執(zhí)行的過程中,其中的某段代碼被重復(fù)執(zhí)行若干次。 被重復(fù)執(zhí)行的代碼段,通常稱之為循環(huán)體。 循環(huán)結(jié)構(gòu)1、條件循環(huán) DO WHILE LOOP EXIT ENDDO說明1:在循環(huán)體中如遇到Loop短路語句,就不執(zhí)行Loop與Enddo之間的所有語句,直接返回Do While循環(huán)起始語句,繼續(xù)進(jìn)行循環(huán)判斷 ,如圖所示: 說明2:在循環(huán)體中如遇到Exit命令,就強(qiáng)行退出循環(huán),即不執(zhí)行Exit與EndDo之間的所有語句,直接轉(zhuǎn)向執(zhí)行EndDo語句后面的命令,結(jié)束循環(huán)。如圖 所示 : 例9:計(jì)算s=1

10、+2+3+10000的和,名為sumdo.prg。set talk offClearsum=0i=1Do while i=10000sum=sum+ii=i+1Enddo?“s=,sumset talk on注意:注意:p隨機(jī)次數(shù)的循環(huán)隨機(jī)次數(shù)的循環(huán)Do While .T.Do While .T. 隨機(jī)次數(shù)的循環(huán)也稱“永真”循環(huán)是用于進(jìn)行隨機(jī)次數(shù)的循環(huán)場合。它適合在數(shù)據(jù)表中,進(jìn)行任意次數(shù)的查詢、修改、增加、刪除記錄的操作?!坝勒妗毖h(huán)通常由操作者在需要時(shí),用Exit命令來強(qiáng)制退出循環(huán)。p有限循環(huán)有限循環(huán)do While K=Ndo While K=N 用于已知循環(huán)次數(shù)的場合,常用于數(shù)值計(jì)算和圖

11、形顯示。 p庫掃描循環(huán)庫掃描循環(huán)Do While Not.Eof()Do While Not.Eof() 用于未知循環(huán)次數(shù)的場合,適合在數(shù)據(jù)表中進(jìn)行統(tǒng)計(jì)。通常用SKIP(CONTINUE)命令來移動(dòng)記錄指針,用文件尾函數(shù)控制循環(huán)。當(dāng)函數(shù)Eof()的值為.F.時(shí),執(zhí)行循環(huán)體。當(dāng)EOF()的值為.T.時(shí),終止循環(huán) Clear AllUse F:密碼驗(yàn)證表Count=1Pwd=Space(9)Do While Count=3?請輸入準(zhǔn)考證號(hào):Set Console OffAccept To PwdSet Console OnLocate For 準(zhǔn)考證號(hào)=PwdIf Found()Messagebo

12、x(歡迎使用學(xué)生成績查詢系統(tǒng)!,48)ExitElseIf Count=3Messagebox(準(zhǔn)考證號(hào)錯(cuò)!重輸入,48)ElseMessagebox(對不起,你不是合法用戶!,48)ExitEndifEndifCount=Count+1EnddoReturn例10: 編程設(shè)計(jì)一個(gè)口令驗(yàn)證程序,只給三次機(jī)會(huì)2 2步長循環(huán)步長循環(huán)FOR FOR = = TO TO STEP STEP ENDFOR | NEXTENDFOR | NEXT說明說明: :1、的值可正可負(fù),默認(rèn)值為1。2、 和都可以是數(shù)值表達(dá)式。但這些表達(dá)式僅在循環(huán)語句執(zhí)行開始時(shí)被計(jì)算一次。在循環(huán)語句的執(zhí)行過程中,初值、 終值 和步長

13、是不會(huì)改變的??梢栽谘h(huán)體內(nèi)改變循環(huán)變量的值,但這會(huì)影響循環(huán)體的執(zhí)行次數(shù)。例11、 用步長循環(huán)編寫計(jì)算s=1+2+10000的程序Clears=0i=1for i=1 to 10000s=s+iendfor?s=:,s&編寫s=1+3+5+99993表文件掃描循環(huán)SCAN FOR WHILEENDSCAN執(zhí)行過程說明:說明:1、Scan循環(huán)是內(nèi)含Eof()和Skip的一種循環(huán)處理。Scan為循環(huán)入口,EndScan為循環(huán)出口,必須配套使用。兩者之間的內(nèi)容即為循環(huán)體。2、Scan 循環(huán)是針對某個(gè)數(shù)據(jù)表的操作,可以在語句中說明數(shù)據(jù)表的作用范圍和For條件表達(dá)式,其意義是僅對指定范圍滿足Fo

14、r條件表達(dá)式的記錄執(zhí)行循環(huán)體語句操作。3、執(zhí)行循環(huán)體內(nèi)容后,若遇到Loop語句,記錄指針移到下一條記錄,返回Scan循環(huán)入口。若遇到Exit語句,強(qiáng)行結(jié)束掃描循環(huán),執(zhí)行EndScan后面的語句。4、當(dāng)For條件表達(dá)式為多個(gè)條件或進(jìn)行多分支處理時(shí),應(yīng)在Scan循環(huán)內(nèi)嵌套Do Case或If分支選擇語句。例13、 在學(xué)生檔案表中,顯示高考成績大于520分的學(xué)生學(xué)號(hào)、姓名、籍貫和高考成績并統(tǒng)計(jì)其個(gè)數(shù)。Close allClearUse F:學(xué)生檔案表Store 0 To SScan For 高考成績520?學(xué)號(hào):+學(xué)號(hào)+Space(2)+姓名:+姓名+Space(2)+籍貫:+籍貫+Space(2)

15、+高考成績:+Str(高考成績,5,1)S=S+1EndScan? 高考成績大于520分學(xué)生人數(shù)有:+Str(S,3)+人Return多重循環(huán)一個(gè)循環(huán)的循環(huán)體中又有另外一個(gè)循環(huán)時(shí),稱為多重循環(huán),VFP程序可以使用多重循環(huán)。返返 回回表單的基本操作表單的基本操作表單(Form)是Visua FoxPro提供的用于建立應(yīng)用程序界面的最主要的工具之一 創(chuàng)建表單方式:創(chuàng)建表單方式:1使用表單向?qū)?chuàng)建表單 : 文件 新建命令,“ 工具” 菜單的“ 向?qū)А?子菜單中選擇“ 表單” 在項(xiàng)目管理器調(diào)用表單向?qū)?2. 使用表單設(shè)計(jì)器 可以使用下面三種方法中的任何一種調(diào)用表單設(shè)計(jì)器: a、在項(xiàng)目管理器環(huán)境下調(diào)用b

16、、 菜單方式調(diào)用c、命令方式調(diào)用3.在命令窗口輸入命令:CREATE FORM 表單名4.在表單設(shè)計(jì)器環(huán)境下,可以調(diào)用表單生成器方便、快速地產(chǎn)生表單利用表單設(shè)計(jì)器創(chuàng)建表單分為四步驟:利用表單設(shè)計(jì)器創(chuàng)建表單分為四步驟:1打開表單設(shè)計(jì)器打開表單設(shè)計(jì)器 方法1:在命令窗口中輸入Create Form命令或在命令窗口中輸入MODIFY FORM 表單名,進(jìn)入表單設(shè)計(jì)器,建立或修改已存在的表單。方法2: 執(zhí)行文件新建,從“新建”對話框中選定“表單”、單擊“新建表單”,進(jìn)入表單設(shè)計(jì)器方法3:執(zhí)行文件打開,在“打開”對話框中,選擇要打開的項(xiàng)目文件,在“項(xiàng)目管理器”窗口中,“新建表單”對話框中,單擊“新建文件

17、”按鈕,進(jìn)入表單設(shè)計(jì)器。2 2設(shè)置數(shù)據(jù)表表單的數(shù)據(jù)環(huán)境設(shè)置數(shù)據(jù)表表單的數(shù)據(jù)環(huán)境 “數(shù)據(jù)環(huán)境設(shè)計(jì)器”打開后,會(huì)彈出 “添加表或視圖”的窗口。要求用戶將表單中要用到的表、視圖添加到數(shù)據(jù)環(huán)境設(shè)計(jì)器中。如果已經(jīng)在數(shù)據(jù)庫中設(shè)計(jì)了聯(lián)系,則相應(yīng)的聯(lián)系也會(huì)自動(dòng)添加到數(shù)據(jù)環(huán)境設(shè)計(jì)器并且在運(yùn)行表單時(shí)會(huì)自動(dòng)打開、自動(dòng)發(fā)揮作用。按鈕鎖定與生成器按鈕鎖定與生成器按鈕鎖定與生成器按鈕鎖定與生成器3 3設(shè)設(shè)計(jì)計(jì)表表單單4 4、保存表單文件、保存表單文件單擊“文件”、“保存”,在“另存為”窗口中,選擇盤符、目錄、文件名、文件類型(表單文件的類型是.Scx),單擊“保存”按鈕。特別注意:表單文件在保存時(shí),將同時(shí)建立.Scx主表

18、單文件和.Sct表單備注文件。屬性名屬性的意義AlwaysOnTop控制表單是否總是處于其他的窗口之上。AutoCenter控制表單在初始化時(shí)是否自動(dòng)居中。BackColor定義表單的背景色。BorderStyle決定表單是否有邊框,還是單邊框,固定對話框或可調(diào)邊框。Caption定義表單標(biāo)題欄顯示的文本。Closable控制表單是否具有關(guān)閉按鈕。Left定義表單與屏幕左邊的距離。Top定義表單與屏幕頂部的距離。Height定義表單的高度。表表 單單屬性名屬性的意義MaxButton控制表單是否有最大化按鈕。Minbutton控制表單是否有最小化按鈕。Movable控制表單是否能夠移動(dòng)到屏幕的

19、新位置。MDIForm.T.則子表單最大化時(shí)能夠與其父表單結(jié)合在一起,.F.則子表單最大化時(shí)仍然保留自身的標(biāo)題行和標(biāo)題文本。Name定義表單的名稱。Picture定義表單的背景圖片。ShowWindow定義表單的類型,0表示在屏幕中(默認(rèn)),1表示在頂層表單中,2表示建立頂層表單。WindowState控制表單在運(yùn)行時(shí),是最小化(1),最大化(2)還是正常狀態(tài)(0)。WindowType控制表單是非模式(0)還是模式(1)。如果是模式表單必須關(guān)閉才可用其他部分事件事件的意義Load當(dāng)表單裝入內(nèi)存前發(fā)生,系統(tǒng)還不能識(shí)別表單中的對象。Init當(dāng)表單從內(nèi)存加載之后發(fā)生,系統(tǒng)能識(shí)別表單中的對象。Act

20、ivate在對象運(yùn)行的階段發(fā)生。GotFocus當(dāng)用戶通過操作或執(zhí)行程序代碼使對象獲得焦點(diǎn)時(shí)發(fā)生。Destroy當(dāng)釋放一個(gè)對象時(shí)發(fā)生。Unload.當(dāng)一個(gè)對象被釋放時(shí)發(fā)生。方法方法的作用Cls清除表單中的圖形和文本,例如:對象.Cls。Release從內(nèi)存中釋放表單或表單集。Hide隱藏表單。Move移動(dòng)表單。Refresh刷新表單,例如:表單.對象.Refresh。Print在表單上打印字符串。Show顯示一個(gè)表單并指定顯示是有模式或無模式。表單的類型表單的類型l 子表單子表單 子表單是包含在其他窗口之中的一種表單,主要用于建立多文檔界面(MDI)的應(yīng)用程序。l 浮動(dòng)表單浮動(dòng)表單 浮動(dòng)表單同

21、子表單一樣,同樣隸屬于某一父表單(主表單)。但是,它并不包含在父表單之中,可以移動(dòng)到父表單之外而顯示于Windows桌面上。 l 頂層表單頂層表單 頂層表單是一個(gè)沒有父表單的獨(dú)立表單。主要用于創(chuàng)建一個(gè)單文檔界面(SDI)的應(yīng)用程序,或者作為一個(gè)MDI應(yīng)用程序中父(主)表單。創(chuàng)建頂層表單創(chuàng)建頂層表單1創(chuàng)建SDI菜單SDI菜單是出現(xiàn)在單文檔界面(SDI)窗口的菜單。具體方法是: 從“菜單設(shè)計(jì)器”的“顯示”菜單中選擇“常規(guī)選項(xiàng)”, 從打開的“常規(guī)選項(xiàng)”對話框中選擇“頂層表單”。2菜單應(yīng)用到表單在“顯示” “常規(guī)選項(xiàng)”對話框中,選擇“頂層表單”復(fù)選框。在表單設(shè)計(jì)時(shí),將表單的Show Window屬性的

22、值設(shè)置為,使其成為頂層表單。在表單的Init 事件或Load事件中,添加調(diào)用菜單程序文件的命令:DO with this,“菜單名”。在表單的destroy事件中,添加釋放菜單的命令。 標(biāo)簽(標(biāo)簽(LabelLabel)控件)控件 屬性名屬性的意義Caption設(shè)置標(biāo)簽的標(biāo)題文本,最長不能超過255個(gè)字符。Alignment指定標(biāo)簽標(biāo)題文本顯示的對齊方式。0:左對齊1:右對齊2:中央。AutoSize設(shè)置標(biāo)簽區(qū)域是否能自動(dòng)調(diào)整為與標(biāo)題文本大小一致,默認(rèn)值為.F.。WordWrap設(shè)置標(biāo)簽的標(biāo)題文本是否隨標(biāo)簽的大小而自動(dòng)進(jìn)行換行處理,默認(rèn)值為.F.。ForeColor用于顯示標(biāo)簽中文本和圖形的前

23、景顏色。事件或方法 作 用Click事件單擊標(biāo)簽時(shí)發(fā)生。Init事件創(chuàng)建標(biāo)簽時(shí)發(fā)生。Move方法移動(dòng)一個(gè)對象,Object.Move (nLeft,nTop,nWidth,nHeight)。文本框控件文本框控件 屬性名屬性的意義Value用于指定文本框的值,文本框支持字符、數(shù)值、日期、邏輯、貨幣型五種數(shù)據(jù)類型,其類型可由Value的初值來決定。默認(rèn)狀態(tài)為字符型,最長不能超過255個(gè)字符。ControlSource通過與數(shù)據(jù)源(數(shù)據(jù)表或視圖中的字段,變量)綁定來取得數(shù)據(jù)。若數(shù)據(jù)源為字段,應(yīng)將有關(guān)的的表或視圖添加到數(shù)據(jù)環(huán)境中。其方法是:右擊表單,在彈出的快捷菜單中選擇“數(shù)據(jù)環(huán)境”。然后,右擊彈出的

24、“數(shù)據(jù)環(huán)境設(shè)計(jì)器”,在彈出的快捷菜單中選擇“添加(A)”,添加相應(yīng)的表或視圖。數(shù)據(jù)源可以在屬性窗口中設(shè)置,也可以在程序代碼中設(shè)置。在代碼中設(shè)置:ThisForm.Text1. ControlSource=”學(xué)生檔案表.姓名”。DateFormat設(shè)置文本框的日期格式,如:ThisForm.Text1. DateFormat=12Century設(shè)置文本框的日期是用四位(1、2)還是用二位(0)表示。PasswordChar用于指定文本框內(nèi)顯示的占位符,并指定用作占位符的符號(hào)通常為“*”。該屬性的默認(rèn)值是空串,沒有占位符,文本框內(nèi)顯示用戶輸入的內(nèi)容。屬性名屬性的意義IMEMode設(shè)置文本框輸入法的

25、自動(dòng)切換,IMEMode=1打開中文輸入法,IMEMode=2關(guān)閉中文輸入法,從而使輸入具有智能化。InputMask對文本框內(nèi)的字符進(jìn)行一對一的格式化限定。“A”表示只允許輸入英文字母,“9”表示只允許輸入字符型或數(shù)值型數(shù)字,“L” 表示只允許輸入邏輯值,“Y”表示只能接受Y或N,“!”只適用字符型文本框,表示只允許輸入任何字符,并將小寫的英文字母轉(zhuǎn)成大寫。比如:限定文本框Text1只能接受6個(gè)字符的輸入,并將小寫的英文字母轉(zhuǎn)成大寫。ThisForm.Text1.InputMask=”!”。Format與InputMask屬性有相似之處,也是用來限定文本框數(shù)據(jù)的輸入格式,但它可以對目標(biāo)數(shù)據(jù)進(jìn)

26、行整體性的格式化限定。比如:ThisForm.Text1.Format=”!”和ThisForm.Text1.InputMask=”!”作用一樣。當(dāng)設(shè)置為T時(shí),表示刪除輸入字符的前導(dǎo)或尾部的空格符。ReadOnly設(shè)置文本框的讀、寫屬性。當(dāng)設(shè)置為.T.時(shí),表示只讀,不允許對文本框的內(nèi)容進(jìn)行修改。SelText返回用戶在文本框中選定的文本。如沒有選定任何文本,則返回空串。事件或方法作 用Click事件單擊文本框時(shí)發(fā)生Valid事件當(dāng)從某個(gè)控制對象退出時(shí),該對象的Valid事件引發(fā)。利用這一事件可以方便有效地對用戶的輸入值進(jìn)行效驗(yàn)。Valid的返回值為.T.表示可以退出此控制對象,.F.表示不能退

27、出此控制對象,并顯示“無效輸入”。當(dāng)Valid的返回值為正整數(shù)N,表示可以退出此控制對象并將焦點(diǎn)往后移N個(gè)對象,當(dāng)Valid的返回值為負(fù)整數(shù)N,表示可以退出此控制對象并將焦點(diǎn)往前移N個(gè)對象。LostFocus事件當(dāng)文本框失去焦點(diǎn)時(shí)發(fā)生。GotFocus事件當(dāng)文本框獲得焦點(diǎn)時(shí)發(fā)生。SetFocus方法文本框獲得焦點(diǎn)的方法,該方法是將鼠標(biāo)的光標(biāo)放置到控件上。一旦一個(gè)控件獲得焦點(diǎn),所有的操作都是針對此控件。命令按鈕控件命令按鈕控件 屬性名屬性的意義Caption設(shè)置命令按鈕的文本標(biāo)題。Enabled設(shè)置命令按鈕是否可操作,默認(rèn)值為.T.。如果將屬性值設(shè)置為.F.,則該命令按鈕顯示成淺色,不能對它進(jìn)行

28、操作。Visible設(shè)置命令按鈕是否可見,默認(rèn)值為.T.。如果將屬性設(shè)置為.F.,則該命令按鈕不顯示。Picture設(shè)置命令按鈕的圖形標(biāo)題。圖形類型可以是.BMP位圖或.ICO圖標(biāo)。命令按鈕控件命令按鈕控件 常用事件和方法常用事件和方法 事件或方法 作用Click事件單擊命令按鈕時(shí)發(fā)生。提示:首先將課程代碼表添加到數(shù)據(jù)環(huán)境中。而后,利用數(shù)據(jù)環(huán)境設(shè)計(jì)器,將有關(guān)的字段拖曳到表單的適當(dāng)?shù)奈恢蒙?,直接?chuàng)建表單對象 編輯框編輯框 編輯框(Edit)和文本框一樣,是用來輸入、輸出和編輯字符型數(shù)據(jù)的對象。不同的是,編輯框允許輸入、輸出多段文本,允許自動(dòng)換行。因此,特別適合備注型字段的輸入、輸出和編輯。編輯框

29、具有剪切、復(fù)制、粘貼等編輯特性,利用編輯框可以很方便地處理備注字段。例 按學(xué)號(hào)給學(xué)生檔案表中“個(gè)人簡歷”備注字段添加“榮獲2004年校園十佳學(xué)生光榮稱號(hào)”。并且,把該學(xué)生的修改后的“個(gè)人簡歷”字段內(nèi)容添加到Edit2中。提示:首先將學(xué)生檔案表添加到表單的數(shù)據(jù)環(huán)境中,表單設(shè)計(jì)界面如圖所示。命令按鈕組控件命令按鈕組控件 屬性名屬性的意義Caption設(shè)置命令按鈕的文本標(biāo)題。Enabled設(shè)置命令按鈕是否可操作,默認(rèn)值為.T.。如果將屬性值設(shè)置為.F.,則該命令按鈕顯示成淺色,不能對它進(jìn)行操作。Visible設(shè)置命令按鈕是否可見,默認(rèn)值為.T.。如果將屬性設(shè)置為.F.,則該命令按鈕不顯示。Pictu

30、re設(shè)置命令按鈕的圖形標(biāo)題。圖形類型可以是.BMP位圖或.ICO圖標(biāo)。例 創(chuàng)建一個(gè)按學(xué)生學(xué)號(hào)和課程名稱查詢成績的表單,表單設(shè)計(jì)界面如圖所示。提示:首先將學(xué)生檔案表、學(xué)生成績表、課程代碼表建立視圖文件ST2.VUE,并將它添加到表單的數(shù)據(jù)環(huán)境中。列表框控件列表框控件 屬性名屬性的意義rowsourcetype rowsource rowsourcetype指明數(shù)據(jù)源的類型,可取表16.2中的0-9。rowsource指定條目數(shù)據(jù)源。與RowSourceType屬性配合使用。List屬性用以存取列表框中數(shù)據(jù)條目的字符串?dāng)?shù)組。如讀取列 表 框 中 第 3 條 目 第 1 列 上 的 數(shù) 據(jù) 項(xiàng) :v

31、ar=thisform.mylist.list(3,1)將第3條目第2列上的數(shù)據(jù)項(xiàng)置為“ok”thisform.mylist.list(3,2)=“ok”listcount指定列表框中數(shù)據(jù)條目的數(shù)目。屬性名屬性的意義columncount 指明列表框的列數(shù)。value返回被選中的條目??梢允菙?shù)值型,也可以是字符性。selected是一個(gè)邏輯型數(shù)組,記錄某個(gè)條目是否被選定。如要知道第3條目是否被選,只需看thisformmylist.selected(3)的值是否為.T.。multiselect能否在列表框中進(jìn)行多重選定。默認(rèn)0或.F.,不允許多重選擇;選1或.T.為允許。多重選擇的方法是按住C

32、trl鍵不放并單擊。事件或方法作 用InteractiveChange事件在用戶使用鼠標(biāo)或鍵盤更改列表框的值時(shí)發(fā)生。在每次交互更改對象時(shí),都要發(fā)生此事件。AddItem方法當(dāng)“owSourceType”屬性為“0-無”時(shí),不能自動(dòng)填充列表項(xiàng),但可以用“AddItem”方法向列表框添加列表項(xiàng)。如:Thisform.List1.owSourceType=0Thisfoem.List1.AddItem”123”RemoveItem方法當(dāng)“owSourceType”屬性為“0-無”時(shí),可以用“RemoveItem”方法從列表中刪除一個(gè)列表項(xiàng)。如:Thisform.List1.owSourceType=

33、0Thisform.List1.RemoveItem“123”。Clear方法清除列表框控件的內(nèi)容。如:Thisform.List1.ClearRequery方法當(dāng)Rowsource中的值改變時(shí),刷新列表框。例 List1列表框的數(shù)據(jù)項(xiàng)是學(xué)生檔案表中的姓名字段,要求可以選擇多個(gè)數(shù)據(jù)項(xiàng)。單擊命令按鈕“添加”,就可以從List1列表框中選擇多個(gè)數(shù)據(jù)項(xiàng)添加到List2列表框中。單擊“刪除”命令按鈕,就可以刪除List2列表框中選定的數(shù)據(jù)項(xiàng)。單擊“退出”命令按鈕,退出表單。提示:首先將學(xué)生檔案表添加到數(shù)據(jù)環(huán)境中。組合框組合框 屬 性屬性的意義Style設(shè)置組合框的形式。該屬性值為0,表示下拉組合框,用

34、戶既可以從列表中選擇,也可以在編輯區(qū)內(nèi)輸入,為默認(rèn)值。值為2,表示下拉列表框,用戶只能從列表中選擇。Text還原組合框中被選中的列表項(xiàng)的數(shù)據(jù),可以把它理解為一個(gè)存儲(chǔ)組合框文本編輯區(qū)數(shù)據(jù)的變量。例如:把組合框中被選中的列表項(xiàng)的數(shù)據(jù)賦予文本框Text1,可以使用下述代碼:Thisform.Text1.Value=This.Combo1.Txet。InputMask當(dāng)是下拉組合框時(shí),指定允許輸入數(shù)據(jù)的格式。例 按圖界面設(shè)計(jì)表單,在List1列表框中選擇課程名稱,在Combo1組合框中選擇或輸入學(xué)號(hào)。單擊“查詢”命令,輸出該學(xué)生的姓名、課程名稱、成績。提示:建立相應(yīng)的數(shù)據(jù)環(huán)境(學(xué)生檔案表、學(xué)生成績表、

35、課程代碼表產(chǎn)生的視圖ST2)并為List1和Combo1綁定數(shù)據(jù)源的類型Row SourceType及數(shù)據(jù)源Row Source。頁頁 框框 屬性屬性的意義PageCount用于指明一個(gè)頁框所包含的頁面(Page)對象的數(shù)量是0到99,默認(rèn)為二頁。ActivePage用一個(gè)數(shù)字指定頁框中的活動(dòng)頁。Tabs用于確定是否顯示頁面標(biāo)題,屬性值為.T.時(shí),顯示頁面標(biāo)題,為默認(rèn)值。屬性值為.F.時(shí),不顯示頁面標(biāo)題。TabStretch指明頁框標(biāo)題是多行顯示(屬性值為0),還是單行顯示(屬性值為1),單行則標(biāo)題長的部分被截取。該屬性在Tabs屬性為.T.時(shí)有效。PagesPages屬性是一個(gè)數(shù)組,用于存取

36、頁框中的某個(gè)頁對象。例 設(shè)計(jì)一個(gè)頁框,第一頁面瀏覽學(xué)生信息,數(shù)據(jù)環(huán)境為學(xué)生檔案表。第二頁面瀏覽學(xué)生成績,數(shù)據(jù)環(huán)境為學(xué)生檔案表、學(xué)生成績表、課程代碼表形成的V_ST2視圖。 屬 性屬性的意義ListMaster用于指定表格所顯示的子表的父表名稱。在兩個(gè)表之間建立一對多關(guān)系時(shí),除了設(shè)置ListMaster屬性外,還要設(shè)置 Childorder和RelationExpr屬性。Childorder用于指定在建立一對多關(guān)系時(shí),子表所要用到的索引。Childorder只能在設(shè)計(jì)時(shí)設(shè)置。RelationlExpr確定基于由ListMaster屬性指定的父表的關(guān)聯(lián)字段。DeleteMark用于設(shè)置表格控件中是

37、否顯示刪除標(biāo)記記錄,默認(rèn)為.T.。Readonly用于設(shè)置表格是否可編輯,默認(rèn)為.F.,可編輯。表表 格格 屬 性屬性的意義RecordSourceType用于指明表格數(shù)據(jù)源的類型。0表示“表”,1表示“別名”,2表示“提示”,3表示“查詢”,4表示“SQL語句”等。RecordSource用于指定表格的據(jù)源。ControlSource 用于指定表格中列的數(shù)據(jù)源。設(shè)置表格的RecordSource屬性后,可以通過ControlSource屬性為表格中的一列指定數(shù)據(jù)源。如果不指定它,各列將順序顯示表格數(shù)據(jù)源中的字段。ColumnCount用于指定表格的列數(shù),也就是一個(gè)表格控件所包含的列的數(shù)目。該

38、屬性的默認(rèn)值為-1,表示表格具有與數(shù)據(jù)源中字段數(shù)一樣多的。事件和方法作 用AftereRowColChange事件當(dāng)用戶從表格的一行移到另一行或列,新單元獲得焦點(diǎn)以及新行或列中的When事件發(fā)生之后引發(fā)。BeforeRowColChange事件當(dāng)用戶更改活動(dòng)的行或列,而新單元還未獲得焦點(diǎn)時(shí)引發(fā)。ActivateCell方法激活表格中的一個(gè)單元,nRow,nRCol指定活動(dòng)單元所在的行和列。如:Grid. ActivateCell(nRow,nCol)AddColumn方法向表格中增加列對象。 SetFocus方法獲得焦點(diǎn)方法。Refresh方法刷新表格。例 在表單上設(shè)計(jì)一個(gè)組合框和一個(gè)表格。

39、在組合框輸入或選擇某一學(xué)號(hào),單擊“查詢成績”,在表格中顯示該學(xué)生的所有課程成績。 復(fù)復(fù) 選選 框框 屬性屬性的意義Value用于指明復(fù)選框的當(dāng)前狀態(tài)。有三種情況:0或.F.未選中,1或.T.被選中,2或.Null.不確定,只在代碼中有效。不確定狀態(tài)僅表明復(fù)選框的當(dāng)前狀態(tài)值不屬于兩個(gè)正常狀態(tài)值,但用戶仍然可以對其進(jìn)行操作,復(fù)選框顯示為灰色。ControlSource用于指明與復(fù)選框建立聯(lián)系的數(shù)據(jù)源。作為數(shù)據(jù)源的字段變量或內(nèi)存變量,其類型可以是邏輯型或數(shù)值型。常用事件和方法作 用Click單擊復(fù)選框(Check)時(shí)引發(fā)。Refresh刷新復(fù)選框。選項(xiàng)按鈕組控件選項(xiàng)按鈕組控件 屬 性 屬性的意義Va

40、lue用于表明被選中按鈕的序號(hào),默認(rèn)為1。比如:若選中了第5個(gè)按鈕,則選項(xiàng)按鈕組的Value值為5。Value屬性值為0,則表示沒有任何一個(gè)按鈕被選中。ButtonCount 指定選項(xiàng)按鈕組中選項(xiàng)按鈕的數(shù)目,默認(rèn)值為2。常用事件和方法 作用Click單擊選項(xiàng)按鈕時(shí)引發(fā)Refresh刷新選項(xiàng)按鈕。例 如圖所示,設(shè)計(jì)一個(gè)身份驗(yàn)證表單。提示:將學(xué)生檔案表、教師代碼表、系統(tǒng)管理員表添加到表單的數(shù)據(jù)環(huán)境中。利用單選按鈕組的Value屬性去打開不同的表,定位進(jìn)行檢驗(yàn)。計(jì)計(jì) 時(shí)時(shí) 器器 屬性屬性的意義Enabled設(shè)置計(jì)時(shí)器的工作狀態(tài)。Enabled為.T.(默認(rèn)值)計(jì)時(shí)器開始工作。為.F.計(jì)時(shí)器暫停工作。Interval用于指定控制計(jì)時(shí)器的Timer事件發(fā)生的毫秒間隔數(shù)。事件或方法作 用Timer事件按Interval設(shè)定的時(shí)間間隔引發(fā)。例 在表單上設(shè)計(jì)一個(gè)數(shù)字電子表,并可以啟動(dòng)或停止形 狀 屬性屬性的意義Curvature設(shè)置形狀,0表示直角,99表示圓,0與99之間表示不同的形狀。FillStyle設(shè)置填充類型。確定是透明的,還是使用一種背景填充。SpecialEf

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論