第八章表單設(shè)計及其應(yīng)用.ppt_第1頁
第八章表單設(shè)計及其應(yīng)用.ppt_第2頁
第八章表單設(shè)計及其應(yīng)用.ppt_第3頁
第八章表單設(shè)計及其應(yīng)用.ppt_第4頁
第八章表單設(shè)計及其應(yīng)用.ppt_第5頁
已閱讀5頁,還剩45頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、2020/10/10,1,第八章 表單設(shè)計及應(yīng)用,2020/10/10,2,第八章 表單設(shè)計及其應(yīng)用,主要授課內(nèi)容:,8.1 創(chuàng)建表單,8.2 表單設(shè)計器,8.4 表單及控件設(shè)計,8.3 表單的數(shù)據(jù)環(huán)境,2020/10/10,3,8.1 創(chuàng)建表單,1.使用表單設(shè)計器創(chuàng)建表單 (1)菜單方式 (2)命令方式 CREATE FORM 表單文件名 2.使用表單向?qū)?chuàng)建表單 3.保存、修改和運行表單 修改:MODI FORM 表單文件名 運行:DO FORM 表單文件名,2020/10/10,4,1.表單設(shè)計器環(huán)境 2.表單控件工具欄 3.屬性窗口,8.2 表單設(shè)計器,2020/10/10,5,1.數(shù)

2、據(jù)環(huán)境設(shè)計器 (1)選擇顯示|數(shù)據(jù)環(huán)境命令 (2)右擊表單界面,選數(shù)據(jù)環(huán)境,8.3 表單的數(shù)據(jù)環(huán)境,2.數(shù)據(jù)環(huán)境中數(shù)據(jù)表和字段的處理方法,2020/10/10,6,8.4 表單及控件設(shè)計,8.4.1無控件表單設(shè)計 8.4.2標簽控件 8.4.3文本框控件 8.4.4命令按鈕控件 8.4.5組合框控件 8.4.6列表框控件 8.4.7復(fù)選框控件 8.4.8選項按鈕組控件,8.4.9計時器控件設(shè)計 8.4.10編輯框控件 8.4.11微調(diào)控件 8.4.12命令按鈕組控件 8.4.13表格控件 8.4.14頁框控件 8.4.15圖像控件 8.4.8線條和形狀控件,講述內(nèi)容:,2020/10/10,7

3、,例1 :設(shè)計一個表單,實現(xiàn)標簽文字邊移動邊變色。 講述內(nèi)容:無控件表單 標簽控件 計時器控件 計時器timer事件 設(shè)計步驟如下:,我們通過以下實例來介紹各種控件:,2020/10/10,8,步驟1設(shè)計一個名為“移動變色”的無控件表單:,設(shè)計一個無控件的表單,基本屬性如下: CAPTION:移動變色 TOP:77 LEFT:20 HEIGHT:177 WIDTH:330 AUTOCENTER:.T. Alwaysontop:.t.,2020/10/10,9,標 簽控件,標簽控件是按一定格式顯示在表單上的文本信息,用來顯示表單中各種說明和提示。標簽的主要屬性有:標簽的大小,顏色,以及顯示信息的

4、內(nèi)容,字體大小,風(fēng)格等。,步驟2在無控件表單上設(shè)計一標簽控件:,主要屬性如下: CAPTION:同學(xué)們再見 TOP:96 LEFT:36 Name: lbl1 FONTSIZE:36 FORECOLOR:紅 AUTOSIZE:.T. BACKSTYLE:0-透明,2020/10/10,10,計時器控件,計時器控件主要利用系統(tǒng)時鐘來控制某些具有規(guī)律性的周期任務(wù)的定時操作。 計時器控件不能單獨使用,必須與表單 等一起使用。 它的主要屬性:enabled,interval Enabled用于控制計時器的打開與關(guān)閉。 Interval用于定義兩次計時器事件觸發(fā)的 時間間隔,單位為毫秒。,2020/10

5、/10,11,標簽,計時器,計時器的主要屬性如下: Enabled:.t. Interval:500,步驟3在表單上設(shè)計一計時器控件:,2020/10/10,12,步驟4 計時器timer事件代碼:,a=int(rand( )*255)+1 b=int(rand( )*255)+1 c=int(rand( )*255)+1 thisform.lbl1.forecolor=rgb(a,b,c) if thisform.lbl1.left1 thisform.lbl1.left=thisform.width else thisform.lbl1.left=thisform.lbl1.left-10

6、 endif,變色,移動,2020/10/10,13,例2 :設(shè)計一個幸運七游戲,文件名字為my_formxy7.scx。 講述內(nèi)容: 命令按鈕控件 文本框控件 命令按鈕單擊(click)事件 設(shè)計步驟如下:,2020/10/10,14,命令按鈕控件,命令按鈕控件主要用來控制程序的執(zhí)行 過程和數(shù)據(jù)表中數(shù)據(jù)的操作等。,步驟1 設(shè)計二個命令按鈕主要屬性如下:,NAME:command1 CAPTION:開始 FONTSIZE:28 FORECOLOR:藍,NAME:command2 CAPTION:退出 FONTSIZE:28 FORECOLOR:藍,2020/10/10,15,文本框控件,文本框

7、控件主要用于數(shù)據(jù)表中某些字段的輸入、輸出,以及從窗口給內(nèi)存變量賦值等操作。 文本框控件的屬性主要包括:文本框的大小,文本框中輸入及輸出信息的字體、大小、顏色等。 步驟2 設(shè)計三個文本框控件主要屬性如下:,NAME:t1 FONTSIZE:20 FORECOLOR:紅,NAME:t2 FONTSIZE:20 FORECOLOR:紅,NAME:t3 FONTSIZE:20 FORECOLOR:紅,2020/10/10,16,幸運七游戲設(shè)計界面,文本框t1,文本框t2,文本框t3,標簽 lbl1,標簽lbl1的主要屬性如下: Caption為空,2020/10/10,17,thisform.t1.v

8、alue=int(rand( )*10) thisform.t2.value=int(rand( )*10) thisform.t3.value=int(rand( )*10) if thisform.t1.value=7.or.thisform.t2.value=7.or.thisform.t3.value=7 thisform.lbl1.caption=贏 else thisform.lbl1.caption=輸 endif,開始按鈕的click事件代碼如下:,例2幸運七游戲結(jié)束。,2020/10/10,18,例3:密碼判斷 設(shè)計一個名為 mima.scx的表單。如圖所示:單擊確認按鈕判斷

9、密碼是否為aaa,是執(zhí)行幸運七游戲,否則釋放。要求:text1的最大長度為8。 密碼輸入時顯示為* .,2020/10/10,19,確認的單擊事件代碼如下: if thisform.text1.value=aaa Do form my_formxy7 else thisform.release Endif 其它提示: 最大長度:maxlength 密碼輸入顯示*: passwordchar,例3密碼判斷結(jié)束,2020/10/10,20,例4:標簽縮放 設(shè)計一個名為my_form4的表單,實現(xiàn)標簽的縮放。計時器的interval屬性為300;表單運行時計時器不起作用,即計時器的enabled屬性

10、為:.f. 。單擊變按鈕時,五角星開始變大,字號每次增加5,當(dāng)字號增加到100時,再從10開始,每次字號增加5到100,這樣不斷的增加。 單擊停止時,五角星停止變化。,2020/10/10,21,提示:標簽的caption屬性為. 對五角星的變大變小的程序語句寫到計時器的timer事件中。 變按鈕的click事件為: thisform.timer1.enabled=.t. 停止按鈕的click事件為:thisform.timer1.enabled=.f. 計時器單擊事件: if thisform.label1.fontsize=100 thisform.label1.fontsize=10 e

11、lse thisform.label1.fontsize=thisform.label1.fontsize+5 endif,例4標簽縮放結(jié)束.,2020/10/10,22,例5:文字變化 講述內(nèi)容:列表框 組合框 復(fù)選框 選項按鈕組 設(shè)計結(jié)果如下:,2020/10/10,23,1.列表框(list) 主要用來顯示選擇項,用戶可以從中選擇一個或多個數(shù)據(jù)項。 主要屬性: Rowsource Rowsourcetype 當(dāng)rowsourcetype 設(shè)置值為1,值源類型為值 Rowsource寫出具體值,之間逗號相隔. 當(dāng)rowsourcetype 設(shè)置值為6,值源類型為字段,rowsource選擇

12、所需字段.,2020/10/10,24,步驟1新建表單,畫出列表框(list1), 并設(shè)置如下屬性: Rowsourcetype 1 值 Rowsource 黑體,宋體,華文行楷,隸書 (注意逗號),運行結(jié)果如右圖:,2020/10/10,25,2.組合框 組合框用于在列表框中選取數(shù)據(jù)并顯示在編輯窗口,它有兩種形式:下拉列表框,下拉組合框。 主要屬性: style rowsource rowsourcetype listindex stype 為0時表示下拉組合框, 為2時表示下拉列表框。 下拉組合框可手寫,下拉列表框只能選擇。 rowsourcetype 和 rowsource同列表框 Li

13、stindex 指定索引值。,2020/10/10,26,步驟2 畫出組合框,并設(shè)置如下屬性: stype 0 Rowsourcetype 1 值 Rowsource 紅,黃,綠,黑 (注意逗號) 輸入form1的init事件代碼(即初始化事件)為: bo1.listindex=1,運行結(jié)果如右圖: 注意stype屬性。,2020/10/10,27,3.復(fù)選框 可以通過單擊改變它的狀態(tài)。 復(fù)選框的主要屬性是: caption value controlsource Caption 顯示在復(fù)選框邊上的文本 當(dāng)value值為0時,表示沒有選擇復(fù)選框, 當(dāng)value值為1時,表示選中了復(fù)選框, 當(dāng)v

14、alue值為2時,復(fù)選框顯示灰色。,2020/10/10,28,步驟3 畫出3個復(fù)選框, 并分別設(shè)置 Check1的caption屬性為:下劃線 Check2的caption屬性為:傾斜 Check3的caption屬性為:加粗,運行結(jié)果如下:,2020/10/10,29,4.選項按鈕組(optiongroup) 它可以包含多個選項,通常用于從多項選擇中選擇其一。 主要屬性: buttoncount 指定按鈕個數(shù) value 選擇第幾個按鈕 按鈕組中按鈕(option)的主要屬性: caption 顯示在按鈕邊上的文本,2020/10/10,30,步驟4 畫出1個選項按鈕組, 設(shè)置按鈕個數(shù)為:

15、4個 option1的caption屬性為:10 option2的caption屬性為:20 option3的caption屬性為:30 option3的caption屬性為:40,注意:選項按鈕組為容器類控件,右鍵-編輯去設(shè)置按鈕的具體屬性。,2020/10/10,31,步驟5設(shè)置form1的屬性如下: caption 文化變化 autocenter .t. 步驟6表單上畫一標簽,并設(shè)置如下屬性: caption 文字變化 autosize .t. fontsize 24,最后設(shè)計界面 如右圖:,2020/10/10,32,步驟7 編寫列表框(list1)的單擊事件(click)代碼:,do

16、 case case this.value=黑體 thisform.label1.fontname=黑體 case this.value=宋體 thisform.label1.fontname=宋體 case this.value=華文行楷 thisform.label1.fontname=華文行楷 case this.value=隸書 thisform.label1.fontname=隸書 endcase,注意代碼別寫錯地方了!,2020/10/10,33,步驟8 編寫組合框(combo1)的click事件代碼:,do case case this.value=紅 thisform.labe

17、l1.forecolor=rgb(255,0,0) case this.value=黃 thisform.label1.forecolor=rgb(255,255,0) case this.value=綠 thisform.label1.forecolor=rgb(0,255,0) case this.value=黑 thisform.label1.forecolor=rgb(0,0,0) endcase,2020/10/10,34,步驟9 編寫復(fù)選框(check1)的click事件代碼:,IF THIS.VALUE=1 THISFORM.LABEL1.FONTBOLD=.T. ELSE TH

18、ISFORM.LABEL1.FONTBOLD=.F. ENDIF,復(fù)選框2和3提示: 傾斜: fontitalic 加粗: fontbold,2020/10/10,35,步驟10 編寫復(fù)選框(check1)的click事件代碼:,do case case this.value=1 thisform.label1.fontsize=10 case this.value=2 thisform.label1.fontsize=20 case this.value=3 thisform.label1.fontsize=30 case this.value=4 thisform.label1.fonts

19、ize=40 endcase,文字變化例題結(jié)束,共10步驟!,2020/10/10,36,課堂練習(xí): 文件名為My_form11, 有一組合框, rowsourcetype=1 rowsource=農(nóng)電,農(nóng)發(fā) ,植保 有一文本框。 功能:當(dāng)在組合框中選定一專業(yè)后,立刻在文本框中顯示此專業(yè)全稱,農(nóng)電為“農(nóng)業(yè)電氣與自動化”,農(nóng)發(fā)為“農(nóng)村區(qū)域發(fā)展”,植保為“植物保護”。,2020/10/10,37,微調(diào)控件,可在微調(diào)控件框中輸入一個值,或通過按鈕選擇一個值,其作用是確保數(shù)據(jù)的使用范圍。一般情況下,它主要用于數(shù)值型數(shù)據(jù)的輸入。,屬性主要包括: Keyboardhighvalue 輸入的最大值。 Key

20、boardlowvalue 輸入的最小值。 Increment 每次單擊按鈕的增減值。 Value 初始值。 Spinnerhighvalue 單擊按鈕所能達到的最大值 Spinnerlowvalue 單擊按鈕所能達到的最小值,2020/10/10,38,例6加減乘除計算 設(shè)計一個名為 my_forma的表單如圖所示:,表單上有一個標簽: name為la,紅色,20號字,autosize為.t. 兩個微調(diào)控件:name分別為s1,s2;最小值為1,最大值為100,增減量為1,初始值為10。 一個單選按鈕組: 4個按鈕:Caption分別為加,減,乘,除。,2020/10/10,39,提示:代碼

21、寫到單選按鈕組的interactivechange事件或click事件中。 代碼提示: thisform.la.caption=str(thisform.s1.value+thisform.s2.value),功能:la上顯示s1和s2的加或減或乘或除的值。,2020/10/10,40,例7累加及階層計算 設(shè)計一個名為 my_formb的表單如圖所示:,1個文本框名字為txt1 2個微調(diào)名字分別為sp1,sp2,sp1最大值為50,最小值為1,sp2最大值為90,最小值為51,增加或減少量為2 2個復(fù)選框名字分別為chk1,chk2;初值value=0,2020/10/10,41,表單功能為:

22、用微調(diào)選擇數(shù)值進行運算,單擊求階層,求出sp1至sp2中數(shù)值之間的階層值存放在p變量中,同時顯示在txt1中,如sp1中56,sp2中81,則求p=56*57*58*.*81 單擊求累加,求出sp1至sp2中數(shù)值之間的累加和存放在s變量中,同時顯示在txt1中,如sp1中60,sp2中90,則求s=60+61+62+.+90 提示:循環(huán)用For 語句,循環(huán)變量用i。 代碼寫到復(fù)選框的click事件中。,2020/10/10,42,求階乘 p=1 for i=thisform.sp1.value to thisform.sp2.value p=p*i endfor thisform.txt1.value=p,求累加和 s=0 for i=thisform.sp1.value to thisform.sp2.value s=s+i Endfor thisform.txt1.value=p,代碼提示:,2020/10/10,43,例8查閱學(xué)生成績情況 所學(xué)控件:表格 設(shè)計步驟如下: (1)新建表單,畫一個標簽控件,顯示文字: 學(xué)生成績情況,并自設(shè)計字體、字號等。 (2)指向表單空白處,按右鍵,進入數(shù)據(jù)環(huán)境 填入學(xué)生、成績、課程三個數(shù)據(jù)

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論