Visual FoxPro數(shù)據(jù)庫程序設(shè)計課件Chap8_1(白文庫2)_第1頁
Visual FoxPro數(shù)據(jù)庫程序設(shè)計課件Chap8_1(白文庫2)_第2頁
Visual FoxPro數(shù)據(jù)庫程序設(shè)計課件Chap8_1(白文庫2)_第3頁
Visual FoxPro數(shù)據(jù)庫程序設(shè)計課件Chap8_1(白文庫2)_第4頁
Visual FoxPro數(shù)據(jù)庫程序設(shè)計課件Chap8_1(白文庫2)_第5頁
已閱讀5頁,還剩23頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、2004-12-28制作者:王偉勤制作者:王偉勤1其它控件介紹其它控件介紹表單管理表單管理 多表單應(yīng)用程序多表單應(yīng)用程序 類類 建立工具欄建立工具欄 2004-12-28制作者:王偉勤制作者:王偉勤2表單設(shè)計的基本步驟為:表單設(shè)計的基本步驟為: 打開表單設(shè)計器打開表單設(shè)計器向表單添加控件向表單添加控件設(shè)置表單及控件的屬性設(shè)置表單及控件的屬性添加表單及控件的事件代碼添加表單及控件的事件代碼保存表單保存表單運行及調(diào)試表單。運行及調(diào)試表單。2004-12-28制作者:王偉勤制作者:王偉勤3其它控件介紹其它控件介紹 控件的通用屬性控件的通用屬性 命令按鈕組控件命令按鈕組控件 編輯框編輯框 復(fù)選框和單選

2、框復(fù)選框和單選框 列表框和組合框列表框和組合框 微調(diào)控件微調(diào)控件 表格和頁框表格和頁框 超級連接超級連接 ActiveX控件和控件和ActiveX綁定控件綁定控件 2004-12-28制作者:王偉勤制作者:王偉勤4控件的通用屬性控件的通用屬性 Enabled屬性屬性 Visible屬性屬性 以以Font打頭的一組屬性打頭的一組屬性 為多個對象設(shè)置共同屬性為多個對象設(shè)置共同屬性 這一屬性是除這一屬性是除“超級連接超級連接”之外的所有控件及表之外的所有控件及表單都有的屬性,其值可設(shè)置為:單都有的屬性,其值可設(shè)置為:.T.-真或真或.F.-假,假,指定表單或控件能否響應(yīng)由用戶引發(fā)的事件。只指定表單或

3、控件能否響應(yīng)由用戶引發(fā)的事件。只有有“計時器計時器”控件的這一屬性的含義不同,請參控件的這一屬性的含義不同,請參閱閱6.6.3節(jié)。節(jié)。 這一屬性是除這一屬性是除“超級連接超級連接”和和“計時器計時器”之外的之外的所有運行時可見的控件及表單都有的屬性,其值所有運行時可見的控件及表單都有的屬性,其值可設(shè)置為:可設(shè)置為:.T.-真或真或.F.-假,指定運行時對象是可假,指定運行時對象是可見還是隱藏。見還是隱藏。 FontSize:定義字的大小;:定義字的大?。籉ontName:定義文本的字體;:定義文本的字體;FontColor:定義字的顏色;:定義字的顏色;Fontbold:定義文字是否粗體;:定

4、義文字是否粗體;FontItalic:定義文字是否斜體;:定義文字是否斜體;這組屬性是許多可有文字的對象都有的屬性,如:表這組屬性是許多可有文字的對象都有的屬性,如:表單、標(biāo)簽控件、命令按鈕控件、文本框控件、表格控單、標(biāo)簽控件、命令按鈕控件、文本框控件、表格控件、列表框控件等等。件、列表框控件等等。 按住按住Shift健分別單擊若干對象,用來選取需設(shè)置健分別單擊若干對象,用來選取需設(shè)置屬性的對象,屬性窗口的對象組合框中將會顯示屬性的對象,屬性窗口的對象組合框中將會顯示“多重選定多重選定”文本,此時便可在屬性窗口為這些文本,此時便可在屬性窗口為這些對象設(shè)置共同屬性,例如:設(shè)置對象設(shè)置共同屬性,例

5、如:設(shè)置FontSize屬性改屬性改變文字大小。變文字大小。 2004-12-28制作者:王偉勤制作者:王偉勤5命令按鈕組控件命令按鈕組控件 命令按鈕組控件是一個容器控件,它可包含若干命令按鈕組控件是一個容器控件,它可包含若干個命令按鈕,并能統(tǒng)一管理這些命令按鈕,命令個命令按鈕,并能統(tǒng)一管理這些命令按鈕,命令按鈕組與組內(nèi)的各命令按鈕都有自己的屬性,事按鈕組與組內(nèi)的各命令按鈕都有自己的屬性,事件和方法程序,因而既可單獨操作各命令按鈕,件和方法程序,因而既可單獨操作各命令按鈕,也可對組控件進行操作。也可對組控件進行操作。命令按鈕組的生成器命令按鈕組的生成器 命令按鈕組及其命令按鈕的操作命令按鈕組及

6、其命令按鈕的操作 按鈕選項卡按鈕選項卡(1)微調(diào)控件:指定命令按鈕組中的按鈕數(shù),對應(yīng)微調(diào)控件:指定命令按鈕組中的按鈕數(shù),對應(yīng)于命令按鈕組的于命令按鈕組的ButtonCount屬性屬性(2)表格:包含標(biāo)題和圖形兩列。表格:包含標(biāo)題和圖形兩列。標(biāo)題列對應(yīng)于命令按鈕的標(biāo)題列對應(yīng)于命令按鈕的Caption屬性,命令按鈕可屬性,命令按鈕可以具有標(biāo)題或圖象,或兩者都有。圖形列對應(yīng)于命令以具有標(biāo)題或圖象,或兩者都有。圖形列對應(yīng)于命令按鈕的按鈕的Picture屬性。屬性。命令按鈕會自動調(diào)整大小,以容納新的標(biāo)題和圖片,命令按鈕會自動調(diào)整大小,以容納新的標(biāo)題和圖片,組容器也會自動調(diào)整大小。組容器也會自動調(diào)整大小。

7、布局選項卡布局選項卡(1)按鈕布局:指定命令按鈕組內(nèi)的按鈕按豎直方按鈕布局:指定命令按鈕組內(nèi)的按鈕按豎直方向或水平方向排列。向或水平方向排列。(2)按鈕間隔:指定按鈕之間的間隔。按鈕間隔:指定按鈕之間的間隔。上述兩項將影響命令按鈕組的上述兩項將影響命令按鈕組的Height和和Width屬性。屬性。(3)邊框樣式:指定命令按鈕組有單線邊欄或無邊邊框樣式:指定命令按鈕組有單線邊欄或無邊框。框。 Click事件的判別事件的判別容器中對象的引用容器中對象的引用容器及其對象的編輯容器及其對象的編輯 常用命令按鈕組的屬性有:常用命令按鈕組的屬性有:ButtonCount:設(shè)置組中命令按鈕的數(shù)目。:設(shè)置組中

8、命令按鈕的數(shù)目。BackStyle:設(shè)置命令按鈕的背景是否透明。:設(shè)置命令按鈕的背景是否透明。BorderStyle:定義命令按鈕組的邊框。:定義命令按鈕組的邊框。 (2)單擊某命令按鈕時,組控件的單擊某命令按鈕時,組控件的Value屬性就會獲得一個數(shù)屬性就會獲得一個數(shù)值或字符串:當(dāng)值或字符串:當(dāng)Value屬性為屬性為1(默認(rèn)值默認(rèn)值)時,將獲得命令按時,將獲得命令按鈕的順序號,它是一個數(shù)值;而當(dāng)鈕的順序號,它是一個數(shù)值;而當(dāng)Value屬性設(shè)置為空時,屬性設(shè)置為空時,將獲得命令按鈕的將獲得命令按鈕的Caption值,它是字符串。于是在命令值,它是字符串。于是在命令按鈕組的按鈕組的Click事件

9、代碼中便可判別出單擊的是哪個命令事件代碼中便可判別出單擊的是哪個命令按鈕,并決定執(zhí)行的動作。按鈕,并決定執(zhí)行的動作。(1)若命令按鈕組及其所含的各命令按鈕分別設(shè)置了若命令按鈕組及其所含的各命令按鈕分別設(shè)置了Click事事件代碼,件代碼,Visual FoxPro將以命令按鈕的將以命令按鈕的Click事件代碼優(yōu)事件代碼優(yōu)先。先。例如引用命令按鈕組中的命令按鈕,例如引用命令按鈕組中的命令按鈕,Thisform.Commandgroupl.Commandl或或This.Commandl。 (1)容器本身的編輯:設(shè)計時若在表單上選定容器,就可編容器本身的編輯:設(shè)計時若在表單上選定容器,就可編輯該容器的

10、屬性、事件代碼與方法程序,但不能編輯容器輯該容器的屬性、事件代碼與方法程序,但不能編輯容器中的對象。中的對象。 (2)容器中對象的編輯:要編輯容器中的對象,須先激活容容器中對象的編輯:要編輯容器中的對象,須先激活容器。激活的方法是選定容器的快捷菜單中的【編輯】命令,器。激活的方法是選定容器的快捷菜單中的【編輯】命令,容器被激活的標(biāo)志是其四周顯示一個斜線邊框,容器被激活的標(biāo)志是其四周顯示一個斜線邊框,如圖所示如圖所示。容器激活后,用戶便可選定其中的對象進行編輯。容器激活后,用戶便可選定其中的對象進行編輯。2004-12-28制作者:王偉勤制作者:王偉勤6操作步驟如下:操作步驟如下:計算器的按鈕部

11、分用命令按鈕組控件進行設(shè)計。向表單計算器的按鈕部分用命令按鈕組控件進行設(shè)計。向表單添加一個命令按鈕組控件,在命令按鈕組控件上單擊右添加一個命令按鈕組控件,在命令按鈕組控件上單擊右鍵,選擇【生成器】,在按鈕選項卡中設(shè)置按鈕數(shù)目為鍵,選擇【生成器】,在按鈕選項卡中設(shè)置按鈕數(shù)目為16,并設(shè)置標(biāo)題,并設(shè)置標(biāo)題 。然后在。然后在“布局布局”頁面中設(shè)置頁面中設(shè)置“按鈕布局按鈕布局”為:水平。單擊【確定】按鈕,關(guān)閉生成為:水平。單擊【確定】按鈕,關(guān)閉生成器。設(shè)置命令按鈕組控件的器。設(shè)置命令按鈕組控件的Height屬性值為屬性值為140,在命令,在命令按鈕組控件上單擊右鍵,選擇【編輯】,移動命令按鈕,按鈕組控

12、件上單擊右鍵,選擇【編輯】,移動命令按鈕,將所有命令按鈕的將所有命令按鈕的height和和Widdth均設(shè)置為:均設(shè)置為:25,設(shè)置,設(shè)置成成 的狀態(tài)。其它部分外觀的設(shè)計同的狀態(tài)。其它部分外觀的設(shè)計同例例6-10,可以從可以從例例6-10的表單中復(fù)制過來。的表單中復(fù)制過來。 例例8-1 用命令按鈕組設(shè)計用命令按鈕組設(shè)計例例6-10的的計算器。計算器。 設(shè)置命令按鈕組控件設(shè)置命令按鈕組控件Commandgroup1的的Value屬性值為:屬性值為:=“”這一步驟非常重要,如沒有這一步,計算器的設(shè)置要這一步驟非常重要,如沒有這一步,計算器的設(shè)置要復(fù)雜得多。復(fù)雜得多。在命令按鈕組控件在命令按鈕組控件

13、Commandgroup1的的Click事件添加下事件添加下列代碼:列代碼:IF Thisform.t AND (asc(This.Value)=48 AND ASC(This.Value)12 This.Parent.label5.Caption=下午下午ELSEThis.Parent.label5.Caption=上午上午ENDIFELSE &如果用戶選擇如果用戶選擇24小時制小時制SET HOURS TO 24This.Parent.text2.Width=241ENDIFIF This.Parent.check2.Value=1This.Parent.text2.Value=SUBST

14、R(TTOC(DATETIME(),10,8)ELSE &如果用戶選擇不顯示秒如果用戶選擇不顯示秒This.Parent.text2.Value=SUBSTR(TTOC(DATETIME(),10,5)ENDIF 如圖所示如圖所示2004-12-28制作者:王偉勤制作者:王偉勤13列表框和組合框列表框和組合框 列表框與組合框都有一個供用戶選項的列表,列表框與組合框都有一個供用戶選項的列表,但兩者之間有兩個區(qū)別:但兩者之間有兩個區(qū)別:(1)列表框任何時候都顯示它的列表,而組合框平列表框任何時候都顯示它的列表,而組合框平時只顯示一個項,待用戶單擊它的向下按鈕后才時只顯示一個項,待用戶單擊它的向下按

15、鈕后才能顯示可滾動的下拉列表。若要節(jié)省空間,并且能顯示可滾動的下拉列表。若要節(jié)省空間,并且突出當(dāng)前選定的項時可使用組合框。突出當(dāng)前選定的項時可使用組合框。(2)組合框又分下拉組合框與下拉列表框兩類,前組合框又分下拉組合框與下拉列表框兩類,前者允許鍵入數(shù)據(jù)項;而列表框與下拉列表框都僅者允許鍵入數(shù)據(jù)項;而列表框與下拉列表框都僅有選項功能。有選項功能。 2004-12-28制作者:王偉勤制作者:王偉勤14列表框控件列表框控件 生成器生成器 列表框生成器含有列表項、布局、樣式、值等列表框生成器含有列表項、布局、樣式、值等4個選項卡,用于為列表框設(shè)置各種屬性。個選項卡,用于為列表框設(shè)置各種屬性。列表項選

16、項卡列表項選項卡 樣式選項卡樣式選項卡 布局選項卡布局選項卡 值選項卡值選項卡 控件值源的類型控件值源的類型 列表框的常用屬性列表框的常用屬性 列表項選項卡列表項選項卡該選項卡用于指定要填充到列表框中的項。該選項卡用于指定要填充到列表框中的項。填充項可以是填充項可以是3種類型數(shù)據(jù)之一:表或視圖中的種類型數(shù)據(jù)之一:表或視圖中的字段、手工輸入的數(shù)據(jù)或數(shù)組中的值。字段、手工輸入的數(shù)據(jù)或數(shù)組中的值。 表或視圖中的字段表或視圖中的字段 手工輸入數(shù)據(jù)手工輸入數(shù)據(jù)數(shù)組中的值數(shù)組中的值 樣式選項卡該選項卡用于指定列表框的樣式,所顯示的行該選項卡用于指定列表框的樣式,所顯示的行數(shù),要否遞增搜索。下面僅說明顯示行

17、數(shù)的設(shè)數(shù),要否遞增搜索。下面僅說明顯示行數(shù)的設(shè)置。置。“要顯示的行數(shù)要顯示的行數(shù)”微調(diào)控件用來調(diào)整列表框的微調(diào)控件用來調(diào)整列表框的顯示行數(shù),但是僅在文本選取顯示行數(shù),但是僅在文本選取7號字時所設(shè)置號字時所設(shè)置的行數(shù)與實際項數(shù)相符。原因是該微調(diào)控件的的行數(shù)與實際項數(shù)相符。原因是該微調(diào)控件的設(shè)置實際上改變了列表框的設(shè)置實際上改變了列表框的Height屬性,而屬性,而Visual FoxPro則按象素來指定高度。則按象素來指定高度。 布局選項卡布局選項卡含有布局選項卡含有1個復(fù)選框和個復(fù)選框和1個表格,用于個表格,用于控制列表框的列寬和顯示。控制列表框的列寬和顯示。1)“調(diào)整列表框的寬度來顯示所有列

18、調(diào)整列表框的寬度來顯示所有列”復(fù)選框:該選復(fù)選框:該選項自動設(shè)置了項自動設(shè)置了Width屬性,能根據(jù)列表項選項卡中屬性,能根據(jù)列表項選項卡中微調(diào)控件指定的列數(shù)自動調(diào)整列表框的寬度。微調(diào)控件指定的列數(shù)自動調(diào)整列表框的寬度。2)表格:表格中顯示了在列表項選項卡中定義的列,表格:表格中顯示了在列表項選項卡中定義的列,并可用鼠標(biāo)拖動列標(biāo)頭右邊的列間隔線來調(diào)整列并可用鼠標(biāo)拖動列標(biāo)頭右邊的列間隔線來調(diào)整列寬,相當(dāng)于修改了寬,相當(dāng)于修改了Co1umnWidths屬性。雙擊列屬性。雙擊列標(biāo)頭還可隱藏該列,使得表單執(zhí)行時該列不顯示,標(biāo)頭還可隱藏該列,使得表單執(zhí)行時該列不顯示,但其數(shù)據(jù)仍起作用。但其數(shù)據(jù)仍起作用。

19、 值選項卡值選項卡包含兩個組合框,分別用來指定返值選項卡包含兩個組合框,分別用來指定返回值的列以及存儲返回值的字段?;刂档牧幸约按鎯Ψ祷刂档淖侄?。1)“從哪一列中返回值從哪一列中返回值”組合框:該組合框的操作對組合框:該組合框的操作對應(yīng)于應(yīng)于BoundColumn屬性。組合框列表中包含字屬性。組合框列表中包含字段名或表示列號的選項,供用戶決定列表框返回段名或表示列號的選項,供用戶決定列表框返回值的字段或列。值的字段或列。2)字段名組合框:該組合框的操作對應(yīng)于字段名組合框:該組合框的操作對應(yīng)于ControlSource屬性,用來指定存儲返回值的字屬性,用來指定存儲返回值的字段。段。 控件值源的類

20、型控件值源的類型 列表框和組合框的列表中可以填充各類數(shù)據(jù),列表框和組合框的列表中可以填充各類數(shù)據(jù),在上述的列表框生成器中,已涉及值,數(shù)組在上述的列表框生成器中,已涉及值,數(shù)組和字段和字段3種類型,實際上共有種類型,實際上共有9類它們均由類它們均由RowSourceType屬性來指定,屬性來指定,RowSourceType 屬性的可取值如表屬性的可取值如表8-1所示:所示: 列表框的常用屬性列表框的常用屬性 MoverBars:設(shè)置列表框的左側(cè)是否顯示移動:設(shè)置列表框的左側(cè)是否顯示移動按鈕。按鈕。MultiSelect:設(shè)置用戶是否可以同時在列表中:設(shè)置用戶是否可以同時在列表中選擇多項。選擇多項

21、。Value:返回列表框中選定的項,如果有多列,:返回列表框中選定的項,如果有多列,返回由返回由BoundColumn屬性指定的列的內(nèi)容。屬性指定的列的內(nèi)容。DisplayValue:返回列表框中選定的項第一列:返回列表框中選定的項第一列的內(nèi)容。的內(nèi)容。 2004-12-28制作者:王偉勤制作者:王偉勤15例例8-4 設(shè)計一個表單,實現(xiàn)設(shè)計一個表單,實現(xiàn) 的簡易數(shù)學(xué)用表。的簡易數(shù)學(xué)用表。 原數(shù)取原數(shù)取1100。 操作步驟如下:操作步驟如下:新建一個表單,向表單添加五個標(biāo)簽控件,一新建一個表單,向表單添加五個標(biāo)簽控件,一個列表框控件,并設(shè)置相關(guān)屬性使其外觀如圖個列表框控件,并設(shè)置相關(guān)屬性使其外觀

22、如圖8-10所示。所示。設(shè)置列表框控件設(shè)置列表框控件List1的屬性的屬性ColumnCount的的值為值為5,說明含有,說明含有5列;屬性列;屬性ColumnWidth的的值為:值為:30,40,50,50,180,確定,確定5列各自的寬度。列各自的寬度。在控件在控件List1的的Init事件中添加如下代碼:事件中添加如下代碼: FOR i=1 to 100n=STR(i,3)This.AddListItem(n,i,1)n=STR(i*i,5)This.AddListItem(n,i,2)n=STR(SQRT(i),7,4)This.AddListItem(n,i,3)n=STR(LOG(

23、i),7,4)This.AddListItem(n,i,4)n=STR(EXP(i),17,4)This.AddListItem(n,i,5)ENDFOR如圖所示如圖所示2004-12-28制作者:王偉勤制作者:王偉勤16組合框控件組合框控件 組合框是列表框和文本框的組合。組合框有組合框是列表框和文本框的組合。組合框有兩種類型:兩種類型:下拉式組合框下拉式組合框, Style屬性的值是屬性的值是0時時下拉式列表框,下拉式列表框,Style屬性的值是屬性的值是2時時組合框控件也有生成器,用法與列表框完全組合框控件也有生成器,用法與列表框完全相同相同 除了生成器提到的屬性外,組合框的常用屬除了生成

24、器提到的屬性外,組合框的常用屬性還有:性還有: Value屬性屬性 DisplayValue屬性屬性 ListCount屬性屬性 ListIndex屬性屬性 List屬性屬性 Selected屬性屬性 功能:返回組合框中選定的項,如果有多列,功能:返回組合框中選定的項,如果有多列,返回由返回由BoundColumn屬性指定的列的內(nèi)容。屬性指定的列的內(nèi)容。 功能:返回組合框中選定的項第一列的內(nèi)容。功能:返回組合框中選定的項第一列的內(nèi)容。也可返回用戶輸入的內(nèi)容。也可返回用戶輸入的內(nèi)容。 功能:返回組合框或列表框中列表項的個數(shù)。功能:返回組合框或列表框中列表項的個數(shù)。說明:該屬性在設(shè)計時不可用,運行

25、時為只讀說明:該屬性在設(shè)計時不可用,運行時為只讀屬性。即僅可取用屬性值,不可進行設(shè)置。屬性。即僅可取用屬性值,不可進行設(shè)置。 格式:格式:Control.ListIndex=nIndex 功能:返回或設(shè)置組合框功能:返回或設(shè)置組合框(列表框列表框)列表顯示時列表顯示時選定項的順序號。選定項的順序號。說明:說明:(1)本屬性用順序號來表示某項已被選定。本屬性用順序號來表示某項已被選定。nIndex則則代表要設(shè)置的順序號,可取代表要設(shè)置的順序號,可取1到到ListCount之間的整之間的整數(shù)之一。數(shù)之一。nIndex的缺省值是的缺省值是0,表示沒有選定列表項。對于下,表示沒有選定列表項。對于下拉組

26、合框,當(dāng)列表中沒有與鍵入值相同的項時就返拉組合框,當(dāng)列表中沒有與鍵入值相同的項時就返回回0。(2)本屬性設(shè)計時不可用,運行時可讀寫。本屬性設(shè)計時不可用,運行時可讀寫。 格式:格式:Control.List(nRow,nCol )功能:返回組合框或列表框第功能:返回組合框或列表框第nRow行,行,nCol列的內(nèi)容。列的內(nèi)容。 格式:格式:control.Selected(nIndex)=IExpr 功能:用于分辨組合框或列表框中某一列表項功能:用于分辨組合框或列表框中某一列表項是否被選中。當(dāng)選中時是否被選中。當(dāng)選中時Selected屬性返回屬性返回.T.,否則返回否則返回.F.。說明:說明:(1

27、)nIndex表示列表項的顯示順序號;表示列表項的顯示順序號;(2)IExpr可取可取.T.或或.F.之一,用來設(shè)置屬性值;之一,用來設(shè)置屬性值;(3)本屬性設(shè)計時不可用,運行時可讀寫。本屬性設(shè)計時不可用,運行時可讀寫。 2004-12-28制作者:王偉勤制作者:王偉勤17微調(diào)控件微調(diào)控件 微調(diào)控件的常用屬性有:微調(diào)控件的常用屬性有:Increment:用戶點按向上或向下按鈕時每次增大或減?。河脩酎c按向上或向下按鈕時每次增大或減小的值。的值。KeyboardHighValue:能輸入到微調(diào)控件文本框中的最:能輸入到微調(diào)控件文本框中的最大值。大值。KeyboardLowValue:能輸入到微調(diào)控

28、件文本框中的最:能輸入到微調(diào)控件文本框中的最小值。小值。SpinnerHighValue:用戶按向上按鈕時能達(dá)到的最大值。:用戶按向上按鈕時能達(dá)到的最大值。SpinnerLowValue:用戶按向下按鈕時能達(dá)到的最小值。:用戶按向下按鈕時能達(dá)到的最小值。Value:返回用戶設(shè)置的值。:返回用戶設(shè)置的值。 2004-12-28制作者:王偉勤制作者:王偉勤18例例8-5 設(shè)計新增人事數(shù)據(jù)的表單設(shè)計新增人事數(shù)據(jù)的表單 要求充分利用新學(xué)的知識,設(shè)計表單時盡量為用戶著想,為要求充分利用新學(xué)的知識,設(shè)計表單時盡量為用戶著想,為用戶提供方便。用戶提供方便。 設(shè)計步驟如下:設(shè)計步驟如下:新建一個名為新建一個名

29、為RSBWH的表的表單,向表單添加數(shù)據(jù)環(huán)境,單,向表單添加數(shù)據(jù)環(huán)境,數(shù)據(jù)環(huán)境中添加數(shù)據(jù)環(huán)境中添加RSB.DBF和和BMDM.DBF兩個表文件。注兩個表文件。注意:必需刪除兩表間的關(guān)系。意:必需刪除兩表間的關(guān)系。并向并向BMDM表添加一條空記表添加一條空記錄。錄。利用數(shù)據(jù)環(huán)境向表單快速添利用數(shù)據(jù)環(huán)境向表單快速添加控件:用鼠標(biāo)指向加控件:用鼠標(biāo)指向RSB表表的字段行,按下鼠標(biāo)左鍵拖的字段行,按下鼠標(biāo)左鍵拖曳到表單的左上角,釋放鼠曳到表單的左上角,釋放鼠標(biāo)則產(chǎn)生如圖所示的表單,標(biāo)則產(chǎn)生如圖所示的表單,默認(rèn)表單不夠大,可拖曳表默認(rèn)表單不夠大,可拖曳表單邊框到足夠大,就可以看單邊框到足夠大,就可以看到所

30、有的控件。到所有的控件。 對于性別字段的輸入,只有對于性別字段的輸入,只有兩種可取值,沒有必要讓用兩種可取值,沒有必要讓用戶輸入戶輸入“男男”或或“女女”,可,可利用選項按鈕組控件,如圖利用選項按鈕組控件,如圖8-12所示,由用戶單擊鼠標(biāo)所示,由用戶單擊鼠標(biāo)就可選定就可選定“男男”或或“女女”。所以需將已有的與性別綁定所以需將已有的與性別綁定的文本框刪除。的文本框刪除。操作如下:在表單空表操作如下:在表單空表處單擊鼠標(biāo),取消對所處單擊鼠標(biāo),取消對所有控件的選擇,選擇與有控件的選擇,選擇與性別綁定的文本框,按性別綁定的文本框,按Delete鍵刪除。添加一鍵刪除。添加一個選項按鈕組,設(shè)置成個選項按

31、鈕組,設(shè)置成如圖如圖8-13右上角所示的右上角所示的外觀。外觀。對于對于“部門代碼部門代碼”字段的值要字段的值要利用利用BMDM表的內(nèi)容,刪除與表的內(nèi)容,刪除與“部門代碼部門代碼”綁定的文本框,綁定的文本框,添加一個組合框控件,在組合添加一個組合框控件,在組合框上單擊鼠標(biāo)右鍵,選擇【生框上單擊鼠標(biāo)右鍵,選擇【生成器】,對成器】,對“列表項列表項”頁面設(shè)頁面設(shè)置成如圖置成如圖8-14所示,對所示,對“值值”頁面設(shè)置成如圖頁面設(shè)置成如圖8-15所示,其所示,其它兩個頁面不變,最后單擊它兩個頁面不變,最后單擊【確定】確認(rèn)設(shè)置?!敬_定】確認(rèn)設(shè)置。刪除與刪除與“出生日期出生日期”和和“工作日期工作日期”

32、綁定的文本框,保留相應(yīng)的標(biāo)簽,添綁定的文本框,保留相應(yīng)的標(biāo)簽,添加兩個微調(diào)控件、一個組合框控件、加兩個微調(diào)控件、一個組合框控件、一個形狀控件和三個標(biāo)簽控件,并調(diào)一個形狀控件和三個標(biāo)簽控件,并調(diào)整成圖整成圖8-13第二行的外觀。提示:形第二行的外觀。提示:形狀控件要置后。在組合框上單擊鼠標(biāo)狀控件要置后。在組合框上單擊鼠標(biāo)右鍵,選擇【生成器】,對右鍵,選擇【生成器】,對“列表項列表項”頁面設(shè)置成如圖頁面設(shè)置成如圖8-16所示,表格中的所示,表格中的數(shù)一直輸入到數(shù)一直輸入到12,其它三個頁面不,其它三個頁面不變,最后單擊【確定】確認(rèn)設(shè)置。并變,最后單擊【確定】確認(rèn)設(shè)置。并設(shè)置兩個微調(diào)控件的屬性如表設(shè)

33、置兩個微調(diào)控件的屬性如表8-2所所示示選定輸入年月日的所有控件,如選定輸入年月日的所有控件,如圖圖8-17所示。單擊所示。單擊“復(fù)制復(fù)制”按鈕,按鈕,再單擊再單擊“粘帖粘帖”按鈕,這樣就有按鈕,這樣就有了兩個輸入日期的控件,再將了兩個輸入日期的控件,再將Spinner1、Spinner2、Spinner3、Spinner4的的Value屬屬性分別設(shè)置為:性分別設(shè)置為:1960,1,1949,1作為默認(rèn)值。作為默認(rèn)值。 對于對于“職稱職稱”字段,也需作處理,字段,也需作處理,為給用戶提供更方便的輸入界面,為給用戶提供更方便的輸入界面,刪除與刪除與“職稱職稱”綁定的文本框,綁定的文本框,添加一個組

34、合框控件,在組合框添加一個組合框控件,在組合框上單擊鼠標(biāo)右鍵,選擇【生成上單擊鼠標(biāo)右鍵,選擇【生成器】,對器】,對“列表項列表項”頁面設(shè)置成頁面設(shè)置成如圖如圖8-18所示,對所示,對“值值”頁面設(shè)頁面設(shè)置成如圖置成如圖8-19所示,其它兩個頁所示,其它兩個頁面不變,最后單擊【確定】確認(rèn)面不變,最后單擊【確定】確認(rèn)設(shè)置。設(shè)置。對于對于“相片相片”字段,也需作處理,字段,也需作處理,為美觀起見,添加一個形狀控件,為美觀起見,添加一個形狀控件,使其置后,并設(shè)置成三維。為給使其置后,并設(shè)置成三維。為給用戶提供更方便的輸入界面,添用戶提供更方便的輸入界面,添加一個命令按鈕,將命令按鈕的加一個命令按鈕,將

35、命令按鈕的外觀設(shè)置成如圖外觀設(shè)置成如圖8-13所示,相片所示,相片標(biāo)簽下的命令按鈕形狀,并設(shè)置標(biāo)簽下的命令按鈕形狀,并設(shè)置該命令按鈕的該命令按鈕的Click事件的代碼為:事件的代碼為:filename=GETPICT() &利用利用getpict()函數(shù)打開選擇圖函數(shù)打開選擇圖片的對話框片的對話框APPEND GENERAL 相片相片 FROM &filename &將選將選取的圖片放到當(dāng)前記錄的相片字段中取的圖片放到當(dāng)前記錄的相片字段中Thisform.Refresh() &刷新表單的顯示,目的是讓剛選刷新表單的顯示,目的是讓剛選的圖顯示出來的圖顯示出來 調(diào)整各控件的位置如圖調(diào)整各控件的位置

36、如圖8-13所示,添加兩個線條控件、所示,添加兩個線條控件、兩個命令按鈕控件,線條的兩個命令按鈕控件,線條的顏色一條設(shè)置成深灰、一條顏色一條設(shè)置成深灰、一條設(shè)置成白色,兩條緊埃著,設(shè)置成白色,兩條緊埃著,形成如圖形成如圖8-13所示的立體效所示的立體效果。命令按鈕的外觀設(shè)置成果。命令按鈕的外觀設(shè)置成如圖如圖8-13所示。所示。添加控件代碼:添加控件代碼:Init事件代碼事件代碼 “保存保存”按鈕的按鈕的Click事件代碼事件代碼 “取消退出取消退出”命令按鈕的命令按鈕的Click事件代碼事件代碼 四個組合框控件的四個組合框控件的Init事件代碼事件代碼 選項按鈕組的選項按鈕組的Click事件的

37、代碼事件的代碼 與職稱綁定組合框控件的與職稱綁定組合框控件的LostFocus事件的代碼事件的代碼 2004-12-28制作者:王偉勤制作者:王偉勤19表格控件表格控件 Visual FoxPro提供了一個強大的工具來顯示提供了一個強大的工具來顯示和操作多行數(shù)據(jù),這就是表格。表格是一個和操作多行數(shù)據(jù),這就是表格。表格是一個容器對象,像表單集能包含多個表單一樣,容器對象,像表單集能包含多個表單一樣,它可以包含多個列。另外,列可以包含表頭它可以包含多個列。另外,列可以包含表頭和控件,并且每一部分都有自己的屬性、事和控件,并且每一部分都有自己的屬性、事件和方法。件和方法。 表格的組成表格的組成 在表

38、單窗口添加表格控件在表單窗口添加表格控件 表格編輯表格編輯 表格的常用屬性表格的常用屬性 用表格控件建立一對多表單用表格控件建立一對多表單 (1)表格表格(Grid):由一或若干列組成:由一或若干列組成(2)列列(Column):一列可顯示表的一個字段,列由:一列可顯示表的一個字段,列由列標(biāo)題和列控件組成。列標(biāo)題和列控件組成。(3)列標(biāo)題列標(biāo)題(例如:例如:Headerl):默認(rèn)顯示字段名,允:默認(rèn)顯示字段名,允許修改。許修改。(4)列控件列控件(例如:例如:Textl);一列必須設(shè)置一個列控;一列必須設(shè)置一個列控件,該列中的每個單元格都可用此控件來顯示字件,該列中的每個單元格都可用此控件來顯

39、示字段值。列控件默認(rèn)為文本框段值。列控件默認(rèn)為文本框 從數(shù)據(jù)環(huán)境創(chuàng)建從數(shù)據(jù)環(huán)境創(chuàng)建 利用表格生成器創(chuàng)建利用表格生成器創(chuàng)建 表格項選項卡表格項選項卡 樣式選項卡樣式選項卡 布局選項卡布局選項卡 關(guān)系選項卡關(guān)系選項卡 交互式創(chuàng)建交互式創(chuàng)建修改列標(biāo)題修改列標(biāo)題前已提到,在表格生成器的標(biāo)題文本框中可以修改列前已提到,在表格生成器的標(biāo)題文本框中可以修改列標(biāo)題。此外還有下面兩種方法。標(biāo)題。此外還有下面兩種方法。a. 用代碼修改:例如用代碼修改:例如Thisform.Gridl.Column2.Headerl.Caption=”名稱名稱”,可將表格中第可將表格中第2列的標(biāo)題修改為:名稱。列的標(biāo)題修改為:名稱

40、。b. 在屬性窗口對象列表中按照從容器到對象的次序,在屬性窗口對象列表中按照從容器到對象的次序,找到找到Headerl對象后,選擇該對象作為當(dāng)前對象,然對象后,選擇該對象作為當(dāng)前對象,然后修改其后修改其Caption屬性。屬性。 調(diào)整表格的行高與列寬調(diào)整表格的行高與列寬a. 調(diào)整列寬:表格激活后,將鼠標(biāo)指針置于表格兩列調(diào)整列寬:表格激活后,將鼠標(biāo)指針置于表格兩列標(biāo)題之間,這時指針變?yōu)閹в凶笥译p向箭頭的豎條,標(biāo)題之間,這時指針變?yōu)閹в凶笥译p向箭頭的豎條,便可左右拖動列線來改變列寬另一種方法是設(shè)置列便可左右拖動列線來改變列寬另一種方法是設(shè)置列的的Width屬性,例如令屬性,例如令Thisform.

41、Gridl.Columnl.Width=50b. 調(diào)整行高:標(biāo)題欄行和內(nèi)容行的調(diào)整方法略有不同。調(diào)整行高:標(biāo)題欄行和內(nèi)容行的調(diào)整方法略有不同。表格激活后,若調(diào)整標(biāo)題欄高度,可將鼠標(biāo)指針置于表格激活后,若調(diào)整標(biāo)題欄高度,可將鼠標(biāo)指針置于表格標(biāo)題欄行首按鈕的下框線處,當(dāng)指針變成帶有上表格標(biāo)題欄行首按鈕的下框線處,當(dāng)指針變成帶有上下雙向箭頭的橫條后,即可上下拖動行線來改變高度。下雙向箭頭的橫條后,即可上下拖動行線來改變高度。調(diào)整內(nèi)容行高度時,應(yīng)將鼠標(biāo)指針置于表格內(nèi)容第調(diào)整內(nèi)容行高度時,應(yīng)將鼠標(biāo)指針置于表格內(nèi)容第1行行行首按鈕的下框線處,然后上下拖動行線來改變行高。行首按鈕的下框線處,然后上下拖動行線

42、來改變行高。此時,所有內(nèi)容行的高度將統(tǒng)一變化。此時,所有內(nèi)容行的高度將統(tǒng)一變化。 若要禁止用戶在運行時擅自改變表格標(biāo)題欄的高若要禁止用戶在運行時擅自改變表格標(biāo)題欄的高度,可將表格的度,可將表格的AllowHeaderSizing屬性設(shè)置屬性設(shè)置為為.F.;若表格的;若表格的AllowRowSizing屬性為屬性為.F.,則,則禁止改變表格內(nèi)容行的高度。禁止改變表格內(nèi)容行的高度。列的增刪列的增刪a. 在表格的在表格的ColumnCount屬性中設(shè)置表格的列數(shù),從屬性中設(shè)置表格的列數(shù),從而改變表格的列數(shù)。而改變表格的列數(shù)。b. 打開表格生成器,在表格項選項卡中可增加或減少字打開表格生成器,在表格項

43、選項卡中可增加或減少字段。段。c. 要刪除列,可在屬性窗口中選定某列后按要刪除列,可在屬性窗口中選定某列后按Del健。健。列屬性列屬性ControlSource:指定某表的某字段作為本列的數(shù)據(jù):指定某表的某字段作為本列的數(shù)據(jù)源。源。CurrentControl:為列指定控件。:為列指定控件。Spares:取值為:取值為.T.(默認(rèn)值默認(rèn)值)時,在列表中只有選中的時,在列表中只有選中的單元格以單元格以CurrentControl指定的控件顯示,其它單元指定的控件顯示,其它單元格仍以文本框顯示。取值為格仍以文本框顯示。取值為.F.時,該列的所有單元格時,該列的所有單元格均以均以CurrentCon

44、trol指定的控件顯示。指定的控件顯示。 在數(shù)據(jù)環(huán)境中建立一對多表單的步驟如下:在數(shù)據(jù)環(huán)境中建立一對多表單的步驟如下:從數(shù)據(jù)環(huán)境設(shè)計器的父表中把期望的字段拖動到表單從數(shù)據(jù)環(huán)境設(shè)計器的父表中把期望的字段拖動到表單里。里。從數(shù)據(jù)環(huán)境設(shè)計器中把相關(guān)的子表拖動到表單里。從數(shù)據(jù)環(huán)境設(shè)計器中把相關(guān)的子表拖動到表單里。表格屬性表格屬性ChildOrder:與父表的主關(guān)鍵字相連接的子表的外部:與父表的主關(guān)鍵字相連接的子表的外部關(guān)鍵字。關(guān)鍵字。ColumnCount:列數(shù)。如果:列數(shù)。如果ColumnCount設(shè)置為設(shè)置為-1,表格的列數(shù)與表格的列數(shù)與RecordSource中的字段數(shù)相同。中的字段數(shù)相同。Li

45、nkMaster:在表格中顯示的子記錄的父表。:在表格中顯示的子記錄的父表。RecordSource:顯示在表格中的數(shù)據(jù)源。:顯示在表格中的數(shù)據(jù)源。RecordSourceType:顯示在表格中的數(shù)據(jù)類型。:顯示在表格中的數(shù)據(jù)類型。AllowAddNew:該屬性為:該屬性為.T.時允許用戶向表格中的時允許用戶向表格中的表添加記錄。該屬性為表添加記錄。該屬性為.F.(默認(rèn)值默認(rèn)值)時,只能用時,只能用APPEND BLANK或或INSERT命令來添加記錄。命令來添加記錄。2004-12-28制作者:王偉勤制作者:王偉勤20例例8-6 設(shè)計一個按部門瀏覽人事表設(shè)計一個按部門瀏覽人事表記錄的表單。記

46、錄的表單。 設(shè)計步驟如下:設(shè)計步驟如下:建立一個新表單,為該表單添加數(shù)據(jù)環(huán)境,在數(shù)據(jù)環(huán)境建立一個新表單,為該表單添加數(shù)據(jù)環(huán)境,在數(shù)據(jù)環(huán)境中添加表中添加表BMDM和表和表RSB,將表,將表BMDM的的“部門名稱部門名稱”字段從數(shù)據(jù)環(huán)境中拖到表單中,在表單中將出現(xiàn)一個文字段從數(shù)據(jù)環(huán)境中拖到表單中,在表單中將出現(xiàn)一個文本框控件,該控件的本框控件,該控件的ControlSource屬性將自動設(shè)置為屬性將自動設(shè)置為BMDM.部門名稱。在部門名稱。在RSB的標(biāo)題處按下鼠標(biāo)拖到表單中,的標(biāo)題處按下鼠標(biāo)拖到表單中,將出現(xiàn)一個表格控件,該控件的將出現(xiàn)一個表格控件,該控件的RecordSourceType屬屬性自

47、動被設(shè)置為性自動被設(shè)置為1-別名,別名,RecordSource屬性自動被設(shè)置屬性自動被設(shè)置為:為:RSB。 在表單中添加一個命在表單中添加一個命令按鈕組控件,并設(shè)令按鈕組控件,并設(shè)置相應(yīng)屬性使其外觀置相應(yīng)屬性使其外觀如圖如圖8-20所示,注意所示,注意需將需將“上一條上一條”命令命令按鈕的按鈕的Enabled屬性屬性設(shè)置為設(shè)置為.F.。設(shè)置命令。設(shè)置命令按鈕組的按鈕組的Click事件的事件的代碼為:代碼為:IF This.Value=1 &如果用戶單擊了如果用戶單擊了“上一條上一條”命令按鈕命令按鈕SKIP -1 &讓表指針向前跳一步讓表指針向前跳一步ELSE &如果用戶單擊了如果用戶單擊了

48、“下一條下一條”命令按鈕命令按鈕SKIP &讓表指針向后跳一步讓表指針向后跳一步ENDIFDO CASECASE RECNO()=1 &如果表指針指向第一條記錄如果表指針指向第一條記錄 This.Command1.Enabled=.f. &設(shè)置設(shè)置“上一條上一條”命令按鈕為不可命令按鈕為不可用用CASE RECNO()=RECCOUNT() &如果表指針指向最后一條記錄如果表指針指向最后一條記錄 This.Command2.Enabled=.f. &設(shè)置設(shè)置“下一條下一條”命令按鈕為不可命令按鈕為不可用用OTHERWISE &如果表指針指向中間某條記錄如果表指針指向中間某條記錄 This.Co

49、mmand1.Enabled=.t. &設(shè)置設(shè)置“上一條上一條”命令按鈕為可用命令按鈕為可用 This.Command2.Enabled=.t. &設(shè)置設(shè)置“下一條下一條”命令按鈕為可用命令按鈕為可用ENDCASEThisform.Refresh &刷新表單的顯示刷新表單的顯示 最后以最后以fzbd.scx為文件名為文件名保存表單。然后執(zhí)行表單,保存表單。然后執(zhí)行表單,當(dāng)用戶單擊下一條或上一當(dāng)用戶單擊下一條或上一條時,對于文本框中顯示條時,對于文本框中顯示的一個父表的部門名稱,的一個父表的部門名稱,在子表中將列出所有屬于在子表中將列出所有屬于該部門的職工記錄信息,該部門的職工記錄信息,如圖如圖

50、8-21所示。這是由于所示。這是由于我們在兩個表之間建立了我們在兩個表之間建立了一對多的關(guān)系一對多的關(guān)系。2004-12-28制作者:王偉勤制作者:王偉勤21頁框控件頁框控件 頁框是一個包含頁面的容器對象,用戶可在頁框是一個包含頁面的容器對象,用戶可在頁框中定義多個頁面,以生成帶選項卡的對頁框中定義多個頁面,以生成帶選項卡的對話框。話框。 在表單中添加頁框控件的步驟為:在表單中添加頁框控件的步驟為:在表單控制工具欄中單頁框控件按鈕;在表單控制工具欄中單頁框控件按鈕;移動鼠標(biāo)指針到表單中,單擊并拖拽到合適的大移動鼠標(biāo)指針到表單中,單擊并拖拽到合適的大小;小;頁框的常用屬性有:頁框的常用屬性有:P

51、ageCount:設(shè)置頁框中頁面的個數(shù)。:設(shè)置頁框中頁面的個數(shù)。頁面的常用屬性有:頁面的常用屬性有:Caption:設(shè)置頁面的名稱。:設(shè)置頁面的名稱。 在頁框中選擇不同頁面的步驟如下:在頁框中選擇不同頁面的步驟如下:在頁框中單擊鼠標(biāo)右鍵,選擇編輯,則頁框呈現(xiàn)在頁框中單擊鼠標(biāo)右鍵,選擇編輯,則頁框呈現(xiàn)出選中狀態(tài),邊框變粗;出選中狀態(tài),邊框變粗;單擊要選擇的頁面標(biāo)簽。單擊要選擇的頁面標(biāo)簽。在頁面中加入控件的步驟如下:在頁面中加入控件的步驟如下:選中要加入控件的頁面;選中要加入控件的頁面;在表單控制工具欄中單擊所需控件,移動鼠標(biāo)到在表單控制工具欄中單擊所需控件,移動鼠標(biāo)到所選頁面中,單擊并拖拽到合適

52、大小。所選頁面中,單擊并拖拽到合適大小。 2004-12-28制作者:王偉勤制作者:王偉勤22例例8-7 建立一個建立一個 及及 所示含有兩所示含有兩個頁面的增加及瀏覽人事數(shù)據(jù)的表單。個頁面的增加及瀏覽人事數(shù)據(jù)的表單。 如圖如圖1圖圖2設(shè)計步驟如下:設(shè)計步驟如下:創(chuàng)建一個新表單,向新表單中添加一個頁框控件,向表單添創(chuàng)建一個新表單,向新表單中添加一個頁框控件,向表單添加數(shù)據(jù)環(huán)境,數(shù)據(jù)環(huán)保中添加加數(shù)據(jù)環(huán)境,數(shù)據(jù)環(huán)保中添加RSB.DBF和和BMDM.DBF兩個兩個表文件。注意:必需刪除兩表間的關(guān)系。表文件。注意:必需刪除兩表間的關(guān)系。打開打開RSBWH表單,選中所有控件,單擊常用工具欄的【復(fù)表單,選

53、中所有控件,單擊常用工具欄的【復(fù)制】按鈕,在頁框控件上單擊鼠標(biāo)右鍵,選擇【編輯】菜單制】按鈕,在頁框控件上單擊鼠標(biāo)右鍵,選擇【編輯】菜單項,單擊常用工具欄的【粘貼】按鈕,并調(diào)整控件到合適的項,單擊常用工具欄的【粘貼】按鈕,并調(diào)整控件到合適的位置,如圖位置,如圖1所示。并將所示。并將RSBWH表單的表單的Init事件的代碼復(fù)制事件的代碼復(fù)制到當(dāng)前表單的到當(dāng)前表單的Init事件中;將事件中;將RSBWH表單數(shù)據(jù)環(huán)境的表單數(shù)據(jù)環(huán)境的Opentables和和Closetables事件的代碼復(fù)制到當(dāng)前表單的相事件的代碼復(fù)制到當(dāng)前表單的相應(yīng)事件中。應(yīng)事件中。 將數(shù)據(jù)環(huán)境窗口顯示出來,單擊頁框的第二個頁面。

54、拖拽將數(shù)據(jù)環(huán)境窗口顯示出來,單擊頁框的第二個頁面。拖拽RSB表(鼠標(biāo)指針指向表(鼠標(biāo)指針指向RSB的標(biāo)題行,然后單擊并拖拽)到的標(biāo)題行,然后單擊并拖拽)到頁框的第二個頁面上,并調(diào)整表格到合適的位置,如圖頁框的第二個頁面上,并調(diào)整表格到合適的位置,如圖2所示。所示。添加添加Page1的的Click事件的代碼為:事件的代碼為:GO BOTTOM &確?;氐巾撁娲_?;氐巾撁?時表指針指向最后一條記錄。時表指針指向最后一條記錄。以以ykbd為文件名保存該表單,然后執(zhí)行表單,將出現(xiàn)如圖為文件名保存該表單,然后執(zhí)行表單,將出現(xiàn)如圖1所示的表單,在表單中單擊第二個頁面,將顯示一個表格,所示的表單,在表單中單

55、擊第二個頁面,將顯示一個表格,如圖如圖2所示。表格中列出表的記錄。所示。表格中列出表的記錄。 2004-12-28制作者:王偉勤制作者:王偉勤23超級連接超級連接 超級鏈接對象含有一個超級鏈接對象含有一個NavigateTo方法程序,方法程序,它允許用戶指定一個網(wǎng)址,執(zhí)行該方法程序它允許用戶指定一個網(wǎng)址,執(zhí)行該方法程序時時Visual FoxPro就會啟動因特網(wǎng)瀏覽器,并就會啟動因特網(wǎng)瀏覽器,并根據(jù)指定的網(wǎng)址進入網(wǎng)絡(luò)的站點來顯示網(wǎng)頁。根據(jù)指定的網(wǎng)址進入網(wǎng)絡(luò)的站點來顯示網(wǎng)頁。 2004-12-28制作者:王偉勤制作者:王偉勤24 在表單上添加超級鏈接在表單上添加超級鏈接控件和命令按鈕控件各一個。

56、控件和命令按鈕控件各一個。Commandl的的Caption屬性設(shè)置為:屬性設(shè)置為:搜狐搜狐Commandl的的Click事件代碼編寫如事件代碼編寫如下:下:Thisform.Hyperlinkl.NavigateTo(“http:/”) &Hyperlinkl為超級鏈接控件的為超級鏈接控件的Name,括號內(nèi)為搜狐網(wǎng)站的網(wǎng)址,括號內(nèi)為搜狐網(wǎng)站的網(wǎng)址保存表單并運行,表單名稱為保存表單并運行,表單名稱為“cjlj”。 例例8-8 在表單上創(chuàng)建一個命令按鈕,要求表單運行時在表單上創(chuàng)建一個命令按鈕,要求表單運行時單擊該命令按鈕即可顯示搜狐網(wǎng)站的主頁。單擊該命令按鈕即可顯示搜狐網(wǎng)站的主頁。 如圖所示如圖

57、所示2004-12-28制作者:王偉勤制作者:王偉勤25ActiveX控件控件 基本概念基本概念向表單添加控件或?qū)ο笙虮韱翁砑涌丶驅(qū)ο?“新建新建”選項按鈕選項按鈕 “由文件創(chuàng)建由文件創(chuàng)建”選項按鈕選項按鈕“創(chuàng)建控件創(chuàng)建控件”選項按鈕選項按鈕 向表單控件工具欄添加向表單控件工具欄添加AttiveX控件控件 添加步驟添加步驟 顯示方法顯示方法 刪除方法刪除方法 ActiveX原來是微軟公司提出的一組技術(shù)標(biāo)準(zhǔn),其中也原來是微軟公司提出的一組技術(shù)標(biāo)準(zhǔn),其中也包括控件的技術(shù)標(biāo)準(zhǔn)。所謂包括控件的技術(shù)標(biāo)準(zhǔn)。所謂ActiveX控件,就是指符合控件,就是指符合ActiveX標(biāo)準(zhǔn)的控件,其數(shù)量現(xiàn)已超過了標(biāo)準(zhǔn)的

58、控件,其數(shù)量現(xiàn)已超過了1000種,例如種,例如在在Windows的的SYSTEM文件夾中含有大量帶文件夾中含有大量帶.OCX擴展擴展名的文件,就都屬于名的文件,就都屬于ActiveX控件。在本章前幾節(jié)介紹控件。在本章前幾節(jié)介紹的控件,僅是的控件,僅是ActiveX控件中常見于控件中常見于Visual FoxPro界面界面的一小部分。的一小部分。為了使為了使Visual FoxPro能夠在需要時利用更多的能夠在需要時利用更多的ActiveX控件,在控件,在“表單控件表單控件”工具欄中設(shè)置了一個英文名為工具欄中設(shè)置了一個英文名為Olecontrol的的ActiveX控件按鈕控件按鈕“”“”。 從從

59、“表單控件表單控件”工具欄中選定工具欄中選定ActiveX控件按鈕控件按鈕“”“”,在表單中單擊鼠標(biāo),屏幕上將彈出一個如圖在表單中單擊鼠標(biāo),屏幕上將彈出一個如圖8-25所示的所示的“插入對象插入對象”對話框。該控件的功能主要由對話框中的對話框。該控件的功能主要由對話框中的3個選項按鈕決定,【新建】與【由文件創(chuàng)建】選項按個選項按鈕決定,【新建】與【由文件創(chuàng)建】選項按鈕用于添加鈕用于添加OLE對象,【創(chuàng)建控件】選項按鈕則用于在對象,【創(chuàng)建控件】選項按鈕則用于在表單中添加一個表單中添加一個ActiveX控件。控件。選定選定“新建新建”選項表示將在表單上新建一個對象,這種選項表示將在表單上新建一個對象

60、,這種對象是某種文件類型的文檔。在插入對象對話框的對象對象是某種文件類型的文檔。在插入對象對話框的對象類型列表中包含文檔,圖象、聲音等多種文件類型,用類型列表中包含文檔,圖象、聲音等多種文件類型,用戶選定其中一項并按確定按鈕后,戶選定其中一項并按確定按鈕后,Visual FoxPro將自將自動打開這種類型的應(yīng)用程序,供用戶輸入文檔的內(nèi)容。動打開這種類型的應(yīng)用程序,供用戶輸入文檔的內(nèi)容。對話框中有一個【顯示為圖標(biāo)】復(fù)選框,可用來確定新對話框中有一個【顯示為圖標(biāo)】復(fù)選框,可用來確定新建的對象以圖標(biāo)顯示,還是直接顯示文檔的內(nèi)容。若選建的對象以圖標(biāo)顯示,還是直接顯示文檔的內(nèi)容。若選定該復(fù)選框,該文檔在

溫馨提示

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

最新文檔

評論

0/150

提交評論