Visual Basic計(jì)算機(jī)窗體程序設(shè)計(jì)(ppt 119頁).ppt_第1頁
Visual Basic計(jì)算機(jī)窗體程序設(shè)計(jì)(ppt 119頁).ppt_第2頁
Visual Basic計(jì)算機(jī)窗體程序設(shè)計(jì)(ppt 119頁).ppt_第3頁
Visual Basic計(jì)算機(jī)窗體程序設(shè)計(jì)(ppt 119頁).ppt_第4頁
Visual Basic計(jì)算機(jī)窗體程序設(shè)計(jì)(ppt 119頁).ppt_第5頁
已閱讀5頁,還剩114頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第4章VisualBasic窗體設(shè)計(jì),本章學(xué)習(xí)要點(diǎn)了解VisualBasic的窗體對象掌握主要窗體控件的設(shè)計(jì)及應(yīng)用掌握ActiveX控件的設(shè)計(jì)及應(yīng)用,本章學(xué)習(xí)要點(diǎn),人機(jī)界面設(shè)計(jì)的優(yōu)劣將直接反映一個(gè)計(jì)算機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)水平,對于計(jì)算機(jī)信息系統(tǒng)設(shè)計(jì)尤其如此。因此,為數(shù)據(jù)庫應(yīng)用系統(tǒng)設(shè)計(jì)操作性能良好的操作界面,是一項(xiàng)至關(guān)重要的內(nèi)容。VisualBasic的窗體對象是提供給用戶最主要的操作界面。在設(shè)計(jì)完成數(shù)據(jù)庫和數(shù)據(jù)表的設(shè)計(jì)后,就應(yīng)該為人機(jī)操作界面設(shè)計(jì)合適的窗體了。,本章學(xué)習(xí)要點(diǎn),VisualBasic的窗體對象是提供給用戶操作數(shù)據(jù)庫數(shù)據(jù)最主要的人機(jī)界面。無論是需要進(jìn)行數(shù)據(jù)查看,還是需要對數(shù)據(jù)庫中的數(shù)據(jù)

2、進(jìn)行追加、修改、刪除等編輯操作,允許用戶直接在數(shù)據(jù)表中進(jìn)行操作絕對是極不明智的選擇。而應(yīng)該為這些操作需求設(shè)計(jì)相應(yīng)的窗體,使得應(yīng)用系統(tǒng)的用戶針對數(shù)據(jù)庫中數(shù)據(jù)所進(jìn)行的任何操作均只能在窗體中進(jìn)行。只有這樣,應(yīng)用系統(tǒng)數(shù)據(jù)的安全性、功能的完善性以及操作的便捷性等一系列指標(biāo)方能真正得以實(shí)現(xiàn)。,本章學(xué)習(xí)要點(diǎn),通過前面幾章的學(xué)習(xí),可以很清楚地看到,數(shù)據(jù)庫中的數(shù)據(jù)可以顯示在數(shù)據(jù)表中,而且可以在數(shù)據(jù)表中接收相關(guān)操作。但是,數(shù)據(jù)表不能提供針對數(shù)據(jù)操作的任何保護(hù)與限制措施。而窗體設(shè)計(jì)不同,可以通過合理地設(shè)計(jì),使得數(shù)據(jù)庫中的數(shù)據(jù)在窗體中的顯示形式、所受到的保護(hù)以及對非法操作的限制等各項(xiàng)所需要的功能都有可能按照設(shè)計(jì)者的意

3、圖得以實(shí)現(xiàn)。因此,令數(shù)據(jù)在窗體得以顯示,并在其中接收操作者的相關(guān)操作,其操作的方便性和安全性方能滿足實(shí)際應(yīng)用的需要。,本章學(xué)習(xí)要點(diǎn),本章介紹VisualBasic窗體對象的設(shè)計(jì)方法及其應(yīng)用實(shí)例,4.1窗體對象概述,4.1.1窗體(Form)窗體對象是VisualBasic應(yīng)用程序的基本構(gòu)造模塊。它是VisualBasic應(yīng)用程序中常見的對象,也是程序設(shè)計(jì)的基礎(chǔ),它用于定義一個(gè)窗口。在運(yùn)行應(yīng)用程序時(shí),與用戶交互操作的實(shí)際窗口。窗體有自己的屬性、事件和方法,用來控制窗體的外觀和行為。一個(gè)VisualBasic應(yīng)用程序含有多個(gè)窗體。窗體是應(yīng)用程序的編程窗口和對話框。一個(gè)窗體可有多個(gè)控件,各種控件對象

4、必須建立在窗體上。一個(gè)窗體對應(yīng)一個(gè)窗體模塊。,4.1窗體對象概述,4.1.2窗體的結(jié)構(gòu)VisualBasic的窗體由5部分組成,如圖4-1所示。圖4-1窗體的結(jié)構(gòu),4.1窗體對象概述,(1)標(biāo)題欄標(biāo)題欄用來顯示窗體的名稱。(2)控制框控制菜單對窗體起控制作用。程序運(yùn)行時(shí),在窗體激活的情況下雙擊窗體圖標(biāo)可以使窗體關(guān)閉,單擊則引出下拉式系統(tǒng)菜單,包括還原、移動、大小、最小化、最大化等選項(xiàng)。(3)控制按鈕包括最大化按鈕、最小化按鈕和關(guān)閉按鈕。(4)工作區(qū)各種控件在窗體中設(shè)置。(5)邊框。,4.1窗體對象概述,4.1.3窗體的屬性所有的VisualBasic程序中的對象都有屬性,屬性式VisualBa

5、sic程序中使用最頻繁的概念之一。窗體的屬性決定了窗體的外觀和操作。窗體的大多數(shù)屬性既可以通過屬性窗口設(shè)置,也可以在程序代碼中設(shè)置,只有少數(shù)屬性只能在設(shè)計(jì)階段設(shè)置。下面介紹一些窗體常用的屬性。,4.1窗體對象概述,1Name和Caption屬性Name屬性用來設(shè)置窗體的名稱,在程序代碼中用窗體的名字代表某個(gè)窗體。它是磁盤上的窗體文件名,擴(kuò)展名為.frm。Caption屬性用來設(shè)置顯示在窗體標(biāo)題欄的名稱。2AutoRedraw屬性AutoRedraw屬性用來設(shè)置是否自動重繪圖形。如果在窗體上已經(jīng)完成某個(gè)圖形的制作,在最小化窗體或改變窗體尺寸之后再恢復(fù)原窗體大小,圖形將消失。將窗體的AutoRed

6、raw屬性由缺省設(shè)置False改為True后,窗體中的圖形就被保存下來,需要時(shí)會自動重新顯示。,4.1窗體對象概述,3BackColor屬性BackColor屬性設(shè)置窗體的背景顏色。4BorderStyle屬性BorderStyle屬性設(shè)置窗體的邊界類型。邊界類型可取6個(gè)值,取值含義分別如下:(1)0代表無邊界;(2)1代表固定單邊界;(3)2代表可調(diào)尺寸邊界;(4)3代表固定對話框;(5)4代表固定工具窗口;(6)5代表可變大小工具窗口。,4.1窗體對象概述,5ControlBox屬性ControlBox屬性設(shè)置窗體是否具有標(biāo)題欄左右兩側(cè)的控制菜單欄。ControlBox屬性的缺省值為Tru

7、e,所有控制菜單欄保留;若改為False則控制菜單欄都消失。6Font屬性Font屬性設(shè)置窗體中輸出字符的字體類型、字形、大小、是否加下劃線或刪除線等。7ForeColor屬性與BackColor屬性相反,F(xiàn)oreColor屬性設(shè)置窗體的前景色。,4.1窗體對象概述,8Icon屬性窗體的控制圖標(biāo)由窗體中Icon屬性的值決定,也是窗體最小化時(shí)的圖標(biāo)。通過單擊Icon屬性右側(cè)的“”按鈕,選擇合適的圖標(biāo)文件。9Picture屬性Picture屬性設(shè)置在窗體上顯示的圖片。通過單擊Picture屬性右側(cè)的“”按鈕,選擇合適的圖形文件。10Height、Width、Top和Left屬性Height設(shè)置窗體

8、的高度;Width屬性設(shè)置窗體的寬度;Top屬性設(shè)置窗體頂端的坐標(biāo)值;Left屬性設(shè)置窗體左端的坐標(biāo)值。,4.1窗體對象概述,11Visible屬性Visible屬性決定窗口是否可見。缺省設(shè)置True表示窗體是可見的;當(dāng)設(shè)置為False時(shí)窗體是不可見的。12WindowState屬性WindowState屬性用來設(shè)置運(yùn)行時(shí)窗體的狀態(tài),三個(gè)取值的含義分別如下:(1)0代表正常狀態(tài),邊界可見;(2)1代表最小化狀態(tài),僅顯示圖標(biāo);(3)2代表最大化狀態(tài),充滿整個(gè)屏幕。,4.1窗體對象概述,4.1.4窗體的事件VisualBasic應(yīng)用程序是典型的事件驅(qū)動程序,運(yùn)行時(shí)交互性強(qiáng),由用戶的操作決定程序的流

9、程,而窗體是用戶經(jīng)常操作的對象,所以窗體的事件十分重要。窗體的事件很多,下面介紹常用的事件。,4.1窗體對象概述,1Load和Unload事件加載一個(gè)窗體時(shí)就響應(yīng)Load事件,它的作用是對變量和屬性做初始化。而當(dāng)卸載一個(gè)窗體時(shí)響應(yīng)Unload事件,它可以為用戶提供存盤等信息,完成在窗體關(guān)閉前的一些工作。2Initialize事件Initialize事件在窗體創(chuàng)建時(shí)發(fā)生,它發(fā)生在Load事件之前,主要初始化某些變量值。,4.1窗體對象概述,3Activate和Deactivate事件當(dāng)窗體被激活成為活動窗口時(shí)響應(yīng)Activate事件,Deactivate事件恰恰與Activate事件相反,在其它

10、窗體被激活時(shí)響應(yīng)Deactivate事件。這些事件對初始化或結(jié)束窗體行為十分方便。例如,在Activate事件中,可以編寫代碼突出顯示一個(gè)特定文本框中的文本;在Deactivate事件中,可以把更改保存到一個(gè)文件或數(shù)據(jù)庫中。,4.1窗體對象概述,4Click和DblClick事件當(dāng)單擊窗體中的空白部分響應(yīng)Click事件,而雙擊窗體中的空白部分則響應(yīng)DblClick事件。5Resize事件無論是因?yàn)橛脩艚换?,還是通過代碼調(diào)整窗體的大小,都會觸發(fā)一個(gè)Resize事件。當(dāng)窗體尺寸變化時(shí),允許在窗體上進(jìn)行移動控件或調(diào)整控件大小等操作。,4.1窗體對象概述,4.1.5窗體的方法設(shè)計(jì)窗體除了設(shè)置屬性、編寫

11、事件驅(qū)動程序外,還經(jīng)常利用窗體的方法對窗體進(jìn)行設(shè)計(jì)。常用的窗體方法如下,4.1窗體對象概述,1Print方法Print方法可以在窗體上顯示文本字符串和表達(dá)式的值,并可在其它圖形對象或打印機(jī)上輸出信息。其一般格式是:窗體名字.Print如果打印當(dāng)前窗體可以省略窗體名字。用Print方法必須首先顯示窗體。打印的內(nèi)容是整個(gè)的窗體圖像,包括菜單欄、標(biāo)題等。,4.1窗體對象概述,2Cls方法Cls方法用來清除運(yùn)行時(shí)Form或PictureBox所生成的圖形和文本。其使用格式是:窗體名字.ClsCls將清除圖形和打印語句在運(yùn)行時(shí)所產(chǎn)生的文本和圖形,而設(shè)計(jì)時(shí)在Form中使用Picture屬性設(shè)置的背景位圖和

12、放置的控件不受Cls影響。如果激活Cls之前AutoRedraw屬性設(shè)置為False,調(diào)用時(shí)該屬性設(shè)置為True,則放置在Form或PictureBox中的圖形和文本也不受影響。這就是說,通過對正在處理的對象的AutoRedraw屬性進(jìn)行操作,可以保持Form或PictureBox中的圖形和文本。,4.1窗體對象概述,3Show和Hide方法使用Show方法可以加載并顯示窗體。Show方法的格式是:窗體名.ShowStyleStyle是可選的整數(shù),它用以決定窗體是模式還是無模式。如果style為0,則窗體是無模式的;如果style為1,則窗體是模式的。如果調(diào)用Show方法時(shí)指定的窗體沒有裝載,

13、VisualBasic將自動裝載該窗體。當(dāng)Show在顯示無模式窗體時(shí),隨后遇到的代碼則要執(zhí)行。當(dāng)Show在顯示模式窗體(modalform)時(shí),則隨后的代碼直到該窗體被隱藏或卸載時(shí)才能執(zhí)行。當(dāng)Show在顯示模式窗體時(shí),除了模式窗體中的對象之外不能進(jìn)行輸入(鍵盤或鼠標(biāo)單擊)。對其它窗體進(jìn)行輸入前程序必須隱藏或卸載模式窗體(通常是處于響應(yīng)用戶某些操作狀態(tài))。,4.1窗體對象概述,在模式窗體顯示時(shí),雖然應(yīng)用程序中的其它窗體失效,但其它應(yīng)用程序不會失效。應(yīng)用程序的啟動窗體在其Load事件調(diào)用后會自動出現(xiàn)。Hide方法用以隱藏窗體對象,但不能使其卸載。其使用語法是:窗體名.Hide隱藏窗體時(shí),它就從屏幕

14、上被刪除,并將其Visible屬性設(shè)置為False。用戶將無法訪問隱藏窗體上的控件,但是對于運(yùn)行中的VisualBasic應(yīng)用程序,隱藏窗體的控件仍然是可用的。窗體被隱藏時(shí),用戶只有等到被隱藏窗體的事件過程的全部代碼執(zhí)行完后才能夠與該應(yīng)用程序交互。如果調(diào)用Hide方法時(shí)窗體還沒有加載,那么Hide方法將加載該窗體但不顯示它。,4.1窗體對象概述,4Move方法使用Move方法移動窗體。其格式是:窗體名.Moveleft,top,width,height其中,left是必須有的,指示窗體左邊的水平坐標(biāo);top是可選的,指示窗體頂邊的垂直坐標(biāo);width是可選的,指示窗體的寬度;height是可選

15、的,指示窗體的高度。,4.1窗體對象概述,4.1.6窗體的類別應(yīng)用程序界面根據(jù)窗體的個(gè)數(shù)不同分為兩種類型:單文檔界面和多文檔界面。1單文檔界面(SDI,SimpleDocumentInterface)單文檔界面應(yīng)用程序中在同一時(shí)間內(nèi)只能打開一個(gè)窗體,如果想要打開另一個(gè)文檔,必須先關(guān)掉已經(jīng)打開的文檔。例如Windows中的“記事本”應(yīng)用程序就是單文檔界面。要決定應(yīng)用程序使采用單文檔界面還是多文檔界面,要根據(jù)應(yīng)用程序的目的。比如,日歷程序可以設(shè)計(jì)稱單文檔界面,因?yàn)樗苌傩枰瑫r(shí)打開多個(gè)日歷。建立一個(gè)單文檔界面的步驟:,4.1窗體對象概述,(1)選擇“文件新建工程”菜單項(xiàng),出現(xiàn)如圖4-2所示的界面;

16、圖4-2新建新工程文件,4.1窗體對象概述,(2)在“新建工程”對話框中選擇“新建”選項(xiàng)卡;(3)選擇“標(biāo)準(zhǔn)EXE”類型文件;(4)單擊“確定”按鈕,創(chuàng)建了工程1的1個(gè)單文檔窗體Form1,如圖4-3所示。,4.1窗體對象概述,圖4-3新建的單文檔窗體,4.1窗體對象概述,2多文檔界面(MDI,MultipleDocumentInterface)多文檔界面應(yīng)用程序中,允許同時(shí)顯示多個(gè)文檔。多文檔界面是典型的Windows應(yīng)用程序界面,例如MicrosoftExcel和MicrosoftWord都具有多文檔界面。多文檔界面包括一個(gè)父窗體和若干個(gè)子窗體,子窗體在父窗體內(nèi),依從與父窗體。父窗體用作于

17、其他窗體的容器,為其他窗體提供工作空間。,4.1窗體對象概述,例4-1設(shè)計(jì)一個(gè)多文檔界面,創(chuàng)建步驟如下:(1)啟動VisualBasic,選擇“文件新建工程”菜單項(xiàng),在“新建工程”對話框中選擇“VB應(yīng)用程序向?qū)А表?xiàng)目類型,單擊“確定”按鈕。(2)在“應(yīng)用程序向?qū)Ы榻B”對話框中單擊“下一步”按鈕。(3)在“應(yīng)用程序向?qū)Ы缑骖愋汀睂υ捒蛑羞x擇“多文檔界面”選項(xiàng),再單擊“下一步”按鈕。(4)在“應(yīng)用程序向?qū)Р藛巍睂υ捒蛑羞x擇自己所需的菜單項(xiàng),再單擊“下一步”按鈕。,4.1窗體對象概述,(5)在“應(yīng)用程序向?qū)ё远x工具欄”對話框中選擇自己所需的工具欄,再單擊“下一步”按鈕。(6)在“應(yīng)用程序向?qū)nt

18、ernet連接”對話框中選擇“否”選項(xiàng),再單擊“下一步”按鈕。(7)在“應(yīng)用程序向?qū)?biāo)準(zhǔn)窗體”對話框中選擇自己所需的窗體,再單擊“下一步”按鈕。(8)在“應(yīng)用程序向?qū)?shù)據(jù)訪問窗體”對話框中選擇是否生成基于該數(shù)據(jù)庫的表和查詢的窗體,然后單擊“下一步”按鈕。(9)在“應(yīng)用程序向?qū)б淹瓿?!”對話框中單擊“完成”按鈕。這樣通過VB的應(yīng)用程序向?qū)Ы⒘斯こ?、一個(gè)MDI父窗體frmMain和一個(gè)子窗體frmDocument,如圖4-4所示。,4.1窗體對象概述,圖4-4具有多文檔界面的工程1,4.1窗體對象概述,通過運(yùn)行工程1,選擇“窗口新建窗口”菜單項(xiàng),可以創(chuàng)建多個(gè)子窗口,如圖4-5所示。圖4-5新建

19、子窗口,4.1窗體對象概述,如果新建了3個(gè)子窗體,選擇圖4-5中“窗口橫向平鋪”菜單項(xiàng),執(zhí)行效果如圖4-6所示。若選擇圖4-5中“窗口縱向平鋪”菜單項(xiàng),執(zhí)行效果如圖4-7所示。圖4-6橫向平鋪3個(gè)子窗口,4.1窗體對象概述,圖4-7縱向平鋪3個(gè)子窗口,4.1窗體對象概述,每個(gè)菜單項(xiàng)的代碼如下:層疊窗口PrivateSubmnuWindowCascade_Click()Me.ArrangevbCascadeEndSub橫向平鋪PrivateSubmnuWindowTileHorizontal_Click()Me.ArrangevbTileHorizontalEndSub縱向平鋪PrivateSu

20、bmnuWindowTileVertical_Click()Me.ArrangevbTileVerticalEndSub排列圖標(biāo)PrivateSubmnuWindowArrangeIcons_Click()Me.ArrangevbArrangeIconsEndSub通過向?qū)Ы⒌墓こ叹哂卸喾N功能,而且源代碼也隨之生成,可以快速了解多文檔界面的設(shè)計(jì)方法。,4.2窗體基本控件及其應(yīng)用,窗體是一個(gè)容器對象,可以包含其他對象。窗體中包含的對象也稱為控件,這是因?yàn)樗鼈冎械拇蠖鄶?shù)都可以對某些事件進(jìn)行相應(yīng)的處理??丶怯脩艚缑娴幕疽?,是進(jìn)行可視化程序設(shè)計(jì)的重要基礎(chǔ)。各個(gè)控件具有很多相同的屬性、方法和事件

21、,也有其特有的一些屬性、方法和事件,設(shè)計(jì)窗體就必須很好地掌握窗體控件的屬性及其應(yīng)用方法。下面逐個(gè)介紹各主要的窗體控件的應(yīng)用方法及其屬性設(shè)置。大多數(shù)控件都有標(biāo)識控件名稱的Name屬性、標(biāo)識對象標(biāo)題的Caption屬性、有效屬性Enable、可見屬性Visible、標(biāo)識控件位置和大小的Top、Left、Height、Width屬性、定義背景色的BackColor屬性、定義前景色的ForeColor屬性和定義字體類型的Font屬性,這些屬性的使用方法和窗體屬性的設(shè)置都是一樣的,這里不再贅述。還有一些常用但容易被忽略的共同屬性,下面做簡單的介紹。,4.2窗體基本控件及其應(yīng)用,1Index屬性如果在屬性

22、窗口為Index屬性賦0或大于0的值,表示該控件是控件數(shù)組元素??梢杂眠@種方法建立控件數(shù)組。使控件成為控件數(shù)組還有另外一個(gè)辦法:在窗體上加兩個(gè)同類型的控件并賦以相同的名字,例如兩個(gè)同名命令按鈕,這時(shí)系統(tǒng)會自動彈出對話框,詢問“已經(jīng)有一個(gè)控件Commandl。創(chuàng)建一個(gè)控件數(shù)組嗎?”,單擊“是”,則形成Commandl控件數(shù)組,在屬性窗口的對象列表框可以看到兩個(gè)控件的索引值分別為0,1。2TabIndex屬性任何能接受焦點(diǎn)的控件都有TabIndex屬性。TabIndex屬性確定用戶按Tab鍵訪問控件的順序。第1個(gè)加入的控件其TabIndex值為0,然后以1為步長遞增。3TabStop屬性任何能接受

23、焦點(diǎn)的控件都有TabStop屬性。TabStop屬性確定是否可以按Tab鍵將焦點(diǎn)移到控件上。其缺省值為True,表示可以;若設(shè)為False,表示按Tab鍵時(shí)控件不接受焦點(diǎn)。4ToolTipText屬性當(dāng)鼠標(biāo)指針停留在控件上,用ToolTipText屬性可以在提示條中顯示文本信息。其作法很簡單,在屬性窗口的ToolTipText屬性欄內(nèi)輸入說明性文本即可實(shí)現(xiàn)。以上是大多數(shù)控件的共同屬性,下面分別介紹各個(gè)控件的使用方法。,4.2窗體基本控件及其應(yīng)用,4.2.1框架(Frame)框架(Frame)主要用做控件的容器,對窗體上的控件進(jìn)行分組,也用于修飾界面??蚣艿娜笔∶麨镕rame1,在工具箱中的圖標(biāo)

24、如圖4-8所示。圖4-8框架,4.2窗體基本控件及其應(yīng)用,在使用框架時(shí)必須先畫出框架,再在框架里面畫其它控件,放在容器中的控件跟隨其容器移動,刪除框架時(shí)連同其內(nèi)部所有控件一起刪除。要將控件放在框架中,可以直接在框架中畫控件。也可以將事先畫好的控件復(fù)制到剪貼板,再選中框架,然后粘貼控件。要檢查控件是否在框架中,可以用鼠標(biāo)拖動框架,容器中的控件應(yīng)該能夠隨框架移動。也可以試用鼠標(biāo)拖動控件,如果控件不能移出框架,也說明控件已經(jīng)放在了框架中。如果在拖動框架時(shí),控件不能隨框架移動,或者拖動控件時(shí),可以將控件移出框架,說明控件不在框架中,即使控件與框架放在了一起。要同時(shí)選中框架中的多個(gè)控件,可以在按住Ctr

25、l鍵的同時(shí)拖動鼠標(biāo),也可以按住Shift鍵,再逐個(gè)單擊所需的控件。,4.2窗體基本控件及其應(yīng)用,例4-2在用戶管理窗體(Form2)中使用的框架(Frame),將選項(xiàng)框都放在了Frame1(圖中被選中區(qū)域)中,如果選項(xiàng)類別不同,可放置多個(gè)框架(Frame)以示區(qū)別。Frame1的應(yīng)用如圖4-9所示。圖4-9框架的應(yīng)用,4.2窗體基本控件及其應(yīng)用,4.2.2標(biāo)簽(Label)標(biāo)簽控件(Label)是用來顯示文本的,但用戶不能編輯這些控件。標(biāo)簽多用于注釋、提示、標(biāo)題等,可用此控件標(biāo)識窗體的對象,例如,說明單擊控件時(shí)將執(zhí)行何種操作,或者在運(yùn)行時(shí)為響應(yīng)應(yīng)用程序的事件而顯示相應(yīng)的信息。標(biāo)簽的缺省名為La

26、bel1,在工具箱中的圖標(biāo)如圖4-10所示。圖4-10標(biāo)簽,4.2窗體基本控件及其應(yīng)用,1屬性(1)Alignment屬性Alignment屬性決定標(biāo)簽中標(biāo)題的放置方式,其中:0:表示左對齊,為缺省設(shè)置;1:表示右對齊;2:表示居中對齊。(2)Autosize屬性該屬性有兩種設(shè)置值:True和False。屬性設(shè)置為True,標(biāo)簽控件可水平擴(kuò)充以適應(yīng)文本內(nèi)容大小的變化;屬性設(shè)置為False(缺省設(shè)置),標(biāo)簽控件不會因文本的改變而變化。為使控件能夠自動調(diào)整以內(nèi)容多少,一般將其設(shè)置為True。(3)BorderStyle屬性標(biāo)簽控件的屬性有兩種設(shè)置值:0和1。取0時(shí)標(biāo)簽無邊界,為缺省設(shè)置;取1時(shí)表示

27、標(biāo)簽為單線邊框。(4)WordWrap屬性該屬性也有兩種設(shè)置值:True和False,其中False是缺省設(shè)置,表示標(biāo)簽不會改變垂直方向大小來適應(yīng)文本的需要。如設(shè)置為True,則標(biāo)簽控件的內(nèi)容會自動換行并垂直擴(kuò)充。,4.2窗體基本控件及其應(yīng)用,2事件(1)Click事件:單擊鼠標(biāo)左鍵或程序中包含觸發(fā)該事件的代碼時(shí)發(fā)生此事件。(2)DblClick事件:雙擊鼠標(biāo)左鍵時(shí)觸發(fā)該事件。(3)Change事件:用戶改變文本時(shí)觸發(fā)該事件。,4.2窗體基本控件及其應(yīng)用,4.2.3文本框(TextBox)文本框用于運(yùn)行時(shí)顯示用戶輸入的信息,在設(shè)計(jì)和運(yùn)行時(shí)為控件的Text屬性賦值。和標(biāo)簽不同的是用戶可以對文本框

28、中的文本進(jìn)行編輯。文本框的缺省名為Text1,在工具箱中的圖標(biāo)如圖4-11所示。圖4-11文本框,4.2窗體基本控件及其應(yīng)用,1屬性該屬性決定文本框中輸入的數(shù)目是否有長度限制,缺省值0表明對單行文本框只受操作系統(tǒng)內(nèi)存的限制,若該屬性被設(shè)置為大于0的數(shù),該數(shù)表示能夠輸入的最大字符數(shù)。(1)Multiline屬性該屬性表明文本框是否可以接收和顯示多行文本,僅在運(yùn)行時(shí)可讀。該屬性有兩種設(shè)置值:True和False。True設(shè)置允許有多行文本,F(xiàn)alse(缺省設(shè)置)忽略單行時(shí)的回車換行和限制數(shù)據(jù),即僅在一行顯示或接收文本。(2)MaxLength屬性MaxLength屬性確定文本框在多行時(shí)可以接收的最

29、大字符數(shù),如果設(shè)置為0,則可以接受32766個(gè)字符。要接受更多的字符,應(yīng)該把MaxLength屬性設(shè)置為所需要的數(shù)值,但不能超過65535個(gè)字符。(3)PasswordChar屬性PasswordChar屬性在缺省情況下為空字符串,文本框顯示鍵入的文本。如果設(shè)置為某個(gè)字符,例如輸入“*”,則程序運(yùn)行時(shí)在文本框鍵入文本時(shí)顯示*,不顯示文本;但文本框接收的仍然是鍵入的文本,該屬性提示用戶在文本框中輸入口令。(4)ScrollBars屬性該屬性指定文本框是否有水平或垂直滾動條,它有四種設(shè)置值:0、1、2、3。0設(shè)置(缺省)表示沒有水平或垂直滾動條,1表示有水平滾動條,2表示有垂直滾動條,3表示既有水

30、平滾動條又有垂直滾動條。對于設(shè)置值為1,2或3的文本框,用戶必須把Multiline屬性設(shè)置為True。,4.2窗體基本控件及其應(yīng)用,2事件與文本框相關(guān)的事件除Click(單擊)、DblClick(雙擊)之外常見的還有以下幾種:(1)Change事件此事件用于改變文本框的內(nèi)容,當(dāng)用戶改變文本或用代碼改變文本框內(nèi)容時(shí)發(fā)生此事件。(2)GotFocus事件文本框獲得焦點(diǎn),單擊對象或使用SetFocus改變代碼中的焦點(diǎn)時(shí),會觸發(fā)該事件。(3)LostFocus事件文本框失去焦點(diǎn)時(shí)觸發(fā)該事件。失去焦點(diǎn)可能是因?yàn)橛脩暨x中了其它對象或程序代碼移動了焦點(diǎn)。3方法常用的文本框方法是SetFocus,它可以使文

31、本框獲得焦點(diǎn)。其語法是:對象名.SetFocus。,4.2窗體基本控件及其應(yīng)用,4.2.4命令按鈕(CommandButton)使用戶與應(yīng)用程序交互的最簡便的方法是給用戶提供一個(gè)按鈕。命令按鈕是一種很常用的控件,命令按鈕用來實(shí)現(xiàn)某種功能操作,當(dāng)用戶選中按鈕時(shí),不僅會執(zhí)行相應(yīng)操作,還會使該按鈕看上去象被按下并釋放一樣。無論何時(shí),只要用戶單擊按鈕,就會調(diào)用Click事件過程。將代碼寫入Click事件過程,執(zhí)行想要執(zhí)行的動作。命令按鈕的缺省名為Command1,在工具箱中的圖標(biāo)如圖4-12所示。圖4-12命令按鈕,4.2窗體基本控件及其應(yīng)用,1屬性(1)Cancel屬性該屬性決定窗體中的命令按鈕是否

32、是Cancel按鈕。如果設(shè)置其屬性為True,則命令按鈕是取消按鈕;如設(shè)置為False,則命令按鈕不是取消按鈕。在一個(gè)窗體中只允許有一個(gè)Cancel按鈕。若將一個(gè)命令按鈕的Cancel屬性設(shè)置為True,則窗體中其他命令按鈕的Cancel屬性會自動被設(shè)置為False,并且當(dāng)此窗體是活動窗體時(shí),通過單擊它或按Esc鍵或當(dāng)此按鈕有焦點(diǎn)時(shí)按Enter鍵,用戶可選中此命令按鈕。(2)Default屬性該屬性把窗體中的命令按鈕作為Default按鈕。如果該屬性被設(shè)為False,則此命令按鈕不是Default按鈕。如果該屬性被設(shè)置為True時(shí),則此命令按鈕為Default按鈕。窗體中只允許有一個(gè)按鈕是De

33、fault按鈕。當(dāng)一個(gè)按鈕的Default設(shè)置為True時(shí),窗體中其他按鈕的Default被自動設(shè)置為False。在很多情況下把OK按鈕的Default屬性設(shè)為True,這時(shí)用戶可鍵入Enter鍵來選擇OK按鈕。(3)Style屬性其缺省設(shè)置為0-Standard。當(dāng)企圖改變按鈕顏色或?yàn)榘粹o添加圖片時(shí),都需要首先設(shè)定Style為1-Graphical。(4)Picture屬性在Style為1-Graphical時(shí)可以為命令按鈕添加圖片,單擊Picture屬性右側(cè)的“”按鈕,選擇合適的圖形文件。,4.2窗體基本控件及其應(yīng)用,2事件命令按鈕的常見事件是Click。單擊命令按鈕時(shí)將觸發(fā)按鈕的Clic

34、k事件并調(diào)用已寫入Click事件過程中的代碼。單擊命令按鈕后也將生成MouseDown和MouseUp事件。按下按鈕時(shí)觸發(fā)MouseDown事件,抬起時(shí)觸發(fā)MouseUp事件。如果要在這些相關(guān)事件中附加事件過程,則應(yīng)確保操作不發(fā)生沖突??丶煌?,這三個(gè)事件過程發(fā)生的順序也不同。CommandButton控件中事件發(fā)生的順序?yàn)椋篗ouseDown、Click、MouseUp。注意:如果用戶試圖雙擊CommandButton控件,則其中每次單擊都將被分別處理;即CommandButton控件不支持雙擊事件,4.2窗體基本控件及其應(yīng)用,4.2.5復(fù)選框(CheckBox)復(fù)選框是矩形的,允許多種選擇

35、。CheckBox控件被選中后,該控件將顯示為,而清除CheckBox控件后,顯示為。該控件可用來提供True/False或者Yes/No選項(xiàng)??梢允褂肅heckBox控件顯示多項(xiàng)選擇,從而可選擇其中的一項(xiàng)或多項(xiàng)。其缺省名為Check1,在工具箱中的圖標(biāo)如圖4-13所示。圖4-13復(fù)選框,4.2窗體基本控件及其應(yīng)用,復(fù)選框最常用的屬性就是Value屬性,Value屬性的取值用來確定其狀態(tài),其中:0:表示未選中;1:表示選中;2:表示禁止使用。復(fù)選框常用的事件是Click事件。在代碼中觸發(fā)Click事件,可以改變一個(gè)CheckBox控件的Value屬性值。,4.2窗體基本控件及其應(yīng)用,4.2.6

36、選項(xiàng)按鈕(OptionButton)選項(xiàng)按鈕(OptionButton),該控件用于提供一個(gè)可以打開或者關(guān)閉的選項(xiàng)。其缺省名為Option1,在工具箱中的圖標(biāo)如圖4-14所示。圖4-14選項(xiàng)按鈕,4.2窗體基本控件及其應(yīng)用,在使用選項(xiàng)按鈕時(shí),一般將幾個(gè)選項(xiàng)按鈕組成一組,在同一組中,用戶只能選擇其中的一項(xiàng)。在Frame控件、PictureBox控件或者窗體這樣的容器中繪制選項(xiàng)按鈕控件,就可以把這些控件分組。同一容器中的選項(xiàng)按鈕控件為一組。運(yùn)行時(shí),在選擇一個(gè)選項(xiàng)按鈕時(shí),同組中的其他選項(xiàng)按鈕控件會自動取消選擇。選項(xiàng)按鈕最常用的屬性就是Value屬性,Value屬性的取值用來確定其狀態(tài),Value屬性

37、的取值為True時(shí)表示選中了該按鈕;Value屬性的取值為False時(shí),表示沒有選中該按鈕。選項(xiàng)按鈕常用的事件為Click事件,當(dāng)運(yùn)行時(shí)單擊選項(xiàng)按鈕,使選項(xiàng)按鈕從未選擇狀態(tài)變成選擇狀態(tài)時(shí),或在代碼中將一個(gè)選項(xiàng)按鈕的Value屬性從False改為True時(shí),產(chǎn)生Click事件??梢栽谠撌录^程中編寫代碼,表示選擇該選項(xiàng)按鈕時(shí)要執(zhí)行的操作。也經(jīng)常不直接在選項(xiàng)按鈕的事件過程中編寫代碼,只是使用選項(xiàng)按鈕進(jìn)行選擇,而在其他事件過程(如命令按鈕的單擊事件過程)中根據(jù)選項(xiàng)按鈕的Value值進(jìn)行判斷,以執(zhí)行相應(yīng)的操作。,4.2窗體基本控件及其應(yīng)用,4.2.7列表框(ListBox)列表框(ListBox)控件

38、。該控件用于顯示項(xiàng)目列表,從列表中可以選擇一項(xiàng)或多項(xiàng)。如果項(xiàng)目總數(shù)超過了可顯示的項(xiàng)目數(shù),VisualBasic會自動給列表框加上滾動條。其缺省名為List1,在工具箱中的圖標(biāo)如圖4-15所示。列表框不具備編輯功能,程序運(yùn)行后用戶不能脫離代碼而改變列表框項(xiàng)目內(nèi)容,只能選擇項(xiàng)目。圖4-15列表框,4.2窗體基本控件及其應(yīng)用,1屬性(1)Columns屬性Columns屬性決定列表框的列數(shù),設(shè)置列表框是按單列顯示(垂直滾動)還是按多列顯示(水平滾動)。Columns值缺省設(shè)置為0,列表框以垂直滾動的單列形式顯示;當(dāng)Columns值大于0時(shí),列表框?yàn)樗綕L動形式,顯示的列數(shù)由Columns值決定。(2

39、)List屬性List屬性定義了一個(gè)保存列表框項(xiàng)目的數(shù)組,返回或設(shè)置列表框的列表部分的項(xiàng)目。在屬性窗口,List帶有一個(gè)編輯器,在設(shè)計(jì)時(shí)可以向列表框添加列表項(xiàng)。輸入每一列表項(xiàng)后使用Ctrl+Enter鍵換行。運(yùn)行時(shí),引用列表框中的第一項(xiàng)為List(0)、第二項(xiàng)為List(1),依此類推。(3)ListCount屬性返回列表框中列表部分項(xiàng)目的總個(gè)數(shù)。,4.2窗體基本控件及其應(yīng)用,(4)ListIndex屬性返回或設(shè)置列表框中當(dāng)前選擇項(xiàng)目的索引,在設(shè)計(jì)時(shí)不可用。列表框的索引從0開始,也就是,第一項(xiàng)的索引為0,第二項(xiàng)的索引為1如果沒有在列表框中選擇項(xiàng)目,則ListIndex的值為-1。對于可以做多重

40、選擇的列表框,如果同時(shí)選擇了多個(gè)項(xiàng)目,ListIndex返回所選項(xiàng)目的最后一項(xiàng)的索引。ListCount屬性值總是比最大的Listlndex值大1。(5)Multiselect屬性返回或設(shè)置一個(gè)值,該值指示是否能夠同時(shí)選擇列表框中的多個(gè)項(xiàng)(復(fù)選),以及如何進(jìn)行復(fù)選,在運(yùn)行時(shí)是只讀的。有以下幾種取值:0-None為缺省值,表示不允許復(fù)選;1-Simple表示單擊鼠標(biāo)或按空格鍵可在列表中選擇或取消選擇列表項(xiàng);2-Extended表示按下Shift鍵并單擊鼠標(biāo),或按下Shift鍵以及一個(gè)箭頭鍵將在以前選擇項(xiàng)的基礎(chǔ)上擴(kuò)展選擇到當(dāng)前選擇項(xiàng)。按下Ctrl鍵并單擊鼠標(biāo)可在列表中選擇或取消選擇列表項(xiàng)。(6)S

41、tyle屬性返回或設(shè)置列表框的顯示樣式。如果該屬性設(shè)置為0(缺省值),則列表框按傳統(tǒng)的列表樣式顯示列表項(xiàng);如果該屬性設(shè)置為1,則在列表框中的每一個(gè)文本項(xiàng)的旁邊都有一個(gè)復(fù)選框,這時(shí)在列表框中可以同時(shí)選擇多項(xiàng)。,4.2窗體基本控件及其應(yīng)用,(7)Selected屬性返回或設(shè)置在列表中的一個(gè)項(xiàng)的選擇狀態(tài)。該屬性在設(shè)計(jì)時(shí)不可用。例如,要選擇列表框Listl的第4項(xiàng),可以使用語句ListlSelected(3)=True。(8)SelCount屬性在Multiselect屬性設(shè)為1或2時(shí),使用該屬性統(tǒng)計(jì)選中的項(xiàng)數(shù)。(9)Sorted屬性指定列表項(xiàng)目是否自動按字母表順序排序。將Sorted設(shè)置為True表

42、示列表項(xiàng)目按字母表順序排序,設(shè)置為False(缺省值)表示列表項(xiàng)目不按字母表順序排序。(10)Text屬性返回列表框中被選擇的項(xiàng)目。如果列表框的名稱為Listl,則ListlText的值總是與ListlList(ListlListlndex)的值相同。Text屬性為只讀屬性。(11)NewIndex屬性NewIndex屬性返回最后加入列表框的項(xiàng)目的索引號。,4.2窗體基本控件及其應(yīng)用,2事件列表框接受Click、DblClick、GotFocus、LostFocus等大多數(shù)控件的通用事件,但通常不編寫Click事件過程,而是當(dāng)單擊某個(gè)命令按鈕或雙擊列表框時(shí)讀取列表框的Text屬性值。3方法(1

43、)AddItem方法AddItem方法用來向列表框中添加新的項(xiàng)目,其語法格式為:列表框AddItem項(xiàng)目,索引號索引號指定要添加項(xiàng)目的插入位置,從0開始,不能大于列表框項(xiàng)目數(shù)減1。當(dāng)索引號省略時(shí),如果Sorted屬性設(shè)置為True,項(xiàng)目將添加到恰當(dāng)?shù)呐判蛭恢?;如果Sorted屬性設(shè)置為False,項(xiàng)目將添加到列表的末尾。(2)Clear方法Clear方法用來情況列表框中的項(xiàng)目。其語法是:列表框Clear(3)RemoveItem方法RemoveItem方法用來從列表框中移除項(xiàng)目,其語法為:列表框RemoveItem索引值格式中的索引值用于指定要刪除的項(xiàng)目的索引。,4.2窗體基本控件及其應(yīng)用,4

44、.2.8組合框(ComboBox)組合框的作用與列表框類似,只是組合框控件將文本框和列表框的特性結(jié)合在一起,既可以在控件的文本框(編輯域)部分輸入信息,也可以在控件的列表框部分選擇一項(xiàng)。另外,組合框可以將列表項(xiàng)折疊起來,使用時(shí)再通過下拉列表進(jìn)行選擇,所以使用組合框比使用列表框更節(jié)省界面空間。其缺省名為Combo1,在工具箱中的圖標(biāo)如圖4-16所示。圖4-16組合框,4.2窗體基本控件及其應(yīng)用,1屬性列表框的屬性基本上都適用于組合框,此外它還有自己的一些屬性。(1)Style屬性這是組合框的一個(gè)重要屬性,用于指定組合框的顯示形式,有以下幾種取值:取值為0時(shí),是缺省值,這種形式稱為“下拉組合框”(

45、DropdownCombo),包括一個(gè)文本框和一個(gè)下拉式列表??梢詮牧斜碇羞x擇項(xiàng)目或在文本框中輸入文本。該樣式將選項(xiàng)折疊起來,當(dāng)需要選擇時(shí),單擊組合框旁邊的下拉箭頭,彈出選項(xiàng)列表,再用鼠標(biāo)單擊進(jìn)行選擇,選擇后列表會重新折疊起來,只顯示被選擇的項(xiàng)目。取值為1時(shí),組合框稱為“簡單組合框”(SimpleCombo)。該形式同樣包括一個(gè)文本框和一個(gè)列表框,與下拉組合框不同的是,該形式不能將列表折疊起來。取值為2時(shí),組合框稱為“下拉列表框”(DropdownListBox)。這種樣式僅允許從下拉列表中選擇,不能在文本框中輸入文本,列表可以折疊起來。(2)Text屬性當(dāng)ComboBox控件的Style屬性

46、設(shè)置為0(下拉組合框)或?yàn)?(簡單組合框)時(shí),該屬性用于返回或設(shè)置編輯域中的文本。而當(dāng)Style屬性設(shè)置為2(下拉列表框)時(shí),該屬性為只讀屬性,運(yùn)行時(shí)返回在列表中選擇的項(xiàng)目。如果列表框的名稱為Combo1,且運(yùn)行時(shí)選擇了某列表項(xiàng),則Combo1Text的值總是與Combo1List(Combo1ListIndex)的值相同。,4.2窗體基本控件及其應(yīng)用,2事件組合框響應(yīng)的事件依賴于Style屬性。當(dāng)Style為0時(shí),響應(yīng)Click、Change、DropDown事件。當(dāng)Style為1時(shí),響應(yīng)Click、DblClick、Change事件。當(dāng)Style為2時(shí),響應(yīng)Click、DropDown事件

47、。當(dāng)Style為0或1時(shí),可以在編輯區(qū)輸入文本,當(dāng)輸入文本時(shí)可以接收Change事件。一般情況下,用戶選擇項(xiàng)目后,只需要讀取組合框的Text屬性。當(dāng)用戶單擊組合框中向下的箭頭時(shí),將觸發(fā)DropDown事件,該事件實(shí)際上對應(yīng)于向下箭頭的單擊(Click)事件。3方法前面介紹的AddItem、Clear、RemoveItem方法也適用于組合框,其用法與列表框中相同。在“企業(yè)資質(zhì)管理系統(tǒng)”的窗體里多次使用了組合框控件,例如在企業(yè)人員管理窗體“Form7”中使用了多個(gè)組合框控件,如圖4-17所示。,4.2窗體基本控件及其應(yīng)用,圖4-17組合框控件的應(yīng)用,4.2窗體基本控件及其應(yīng)用,在圖4-17中的頁面

48、里共用到了5個(gè)ComboBox控件,各控件的屬性如表4-1所示。表4-1組合框?qū)傩缘脑O(shè)置,4.3常用ActiveX控件及其應(yīng)用,VisualBasic6.0中的控件分為兩種,即內(nèi)部控件(或標(biāo)準(zhǔn)控件)和ActiveX控件。前面介紹了部分內(nèi)部控件,本節(jié)將介紹VisualBasic6.0中幾個(gè)常用的ActiveX控件。ActiveX控件是擴(kuò)展名為OCX的文件(在WindowsSystem目錄下),內(nèi)部控件是工具箱中的“常駐”控件,始終出現(xiàn)在工具箱中,它的內(nèi)容是不能改變的,而ActiveX控件可以根據(jù)需要加到工具箱中,或從工具箱中取消。在一般情況下,工具箱中只有內(nèi)部控件。為了把所需要的ActiveX控

49、件加到工具箱中,可按以下步驟執(zhí)行:(1)選擇“工程部件”菜單項(xiàng),彈出“部件”對話框;(2)在對話框中選擇“控件”選項(xiàng)卡,顯示ActiveX控件的列表;(3)在列表框中找到需要添加的控件名稱,單擊控件名稱左側(cè)的復(fù)選框;(4)使用同樣的方法選擇需要添加的其它控件;(5)單擊“確定”按鈕,即可將需要的控件添加到工具箱中。ActiveX控件很多,下面介紹幾個(gè)在應(yīng)用程序中經(jīng)常使用的控件。,4.3常用ActiveX控件及其應(yīng)用,4.3.1ListView控件ListView控件可使用四種不同視圖顯示項(xiàng)目。通過此控件,可將項(xiàng)目組成帶有或不帶有列標(biāo)頭的列,并顯示伴隨的圖標(biāo)和文本。ListView控件包括Lis

50、tItem和ColumnHeader對象。ListItem對象定義ListView控件中項(xiàng)目的各種特性,諸如:項(xiàng)目的簡要描述;由ImageList控件提供的與項(xiàng)目一起出現(xiàn)的圖標(biāo);附加的文本片段,稱作子項(xiàng)目,它們與顯示在報(bào)表視圖中的ListItem對象關(guān)聯(lián)。在工程中應(yīng)用ListView控件的步驟如下:1添加ListView控件ListView控件不在標(biāo)準(zhǔn)的工具箱內(nèi)。添加它到工具箱的方法是:(1)選擇“工程部件”菜單項(xiàng),彈出“部件”對話框;(2)在對話框中選擇“控件”選項(xiàng)卡,顯示ActiveX控件的列表;(3)在列表框中選中要添加的控件“MicrosoftWindowsCommonControls

51、6.0”,單擊控件名稱左側(cè)的復(fù)選框,如圖4-18所示;然后單擊“確定”按鈕即可。,4.3常用ActiveX控件及其應(yīng)用,圖4-18添加ListView控件到工具箱,4.3常用ActiveX控件及其應(yīng)用,上述操作后工具箱內(nèi)出現(xiàn)了ListView控件,如圖4-19所示。圖4-19添加ListView控件的工具箱將列表瀏覽器控件加入窗體后運(yùn)行,是白板一塊。列表項(xiàng)和圖形的添加等都需要編程解決。,4.3常用ActiveX控件及其應(yīng)用,2屬性右擊窗體上的ListView控件將出現(xiàn)屬性頁,如圖4-20所示。圖4-20ListView控件的屬性頁,4.3常用ActiveX控件及其應(yīng)用,(1)View屬性Vie

52、w屬性的取值決定了在控件中列表項(xiàng)(ListItem)使用何種視圖顯示項(xiàng)目,View屬性的四個(gè)取值如表4-2所示:表4-2ListView控件的四種類型,4.3常用ActiveX控件及其應(yīng)用,(2)Arrange屬性Arrange屬性返回或設(shè)置一個(gè)排列列表瀏覽器中圖標(biāo)或小圖標(biāo)的方式。該屬性只有在圖標(biāo)和小圖標(biāo)模式下使用。Arrange屬性有3個(gè)取值如表4-3所示:表4-3Arrange屬性取值,4.3常用ActiveX控件及其應(yīng)用,(3)LabelEdit屬性LabelEdit屬性返回或設(shè)置一個(gè)值,確定是否可以編輯列表項(xiàng)。LabelEdit屬性有2個(gè)取值如表4-4所示:表4-4LabelEdit屬

53、性取值,4.3常用ActiveX控件及其應(yīng)用,(4)HideColumnHeaders屬性HideColumnHeaders屬性確定在報(bào)表模式下行標(biāo)題是否可見。缺省設(shè)置為False,這時(shí)標(biāo)題不可見;否則設(shè)置為True,這時(shí)標(biāo)題不可見。(5)ColumnHeaderlcons屬性ColumnHeaderlcons屬性返回或者設(shè)置Imagelist控件,該控件為ColumnHeaders集合提供圖標(biāo)。要為ColumnHeader對象設(shè)置圖標(biāo),請將它的Icon屬性設(shè)置成為一個(gè)索引值、關(guān)鍵字或者對象引用,以指向ColumnHeaderIcons屬性指定的ImageList控件中的一個(gè)ListImage

54、對象。圖標(biāo)索引是為列標(biāo)題配圖,其中的值為圖像列表中的索引值;如果列標(biāo)題沒有圖,則圖標(biāo)索引值為0。建立列首圖標(biāo)與圖像列表控件的聯(lián)系。其語法為:對象名.ColumnHeaderIconsImageList(6)LabelWrap屬性LabelWrap屬性決定標(biāo)簽是否可換行。缺省設(shè)置為True,標(biāo)簽可換行;否則為False時(shí)標(biāo)簽不能換行。(7)TextBackground屬性TextBackground屬性返回或者設(shè)置的值決定ListItem對象的背景是透明的還是不透明的。缺省設(shè)置為0-lvwTransparent,列表項(xiàng)的背景是透明的;取值為1-lvwOpaque時(shí),列表項(xiàng)的背景是不透明的。,4.

55、3常用ActiveX控件及其應(yīng)用,3方法使用列表項(xiàng)集合的Add方法給ListView控件添加列表項(xiàng)對象。其語法是:object.Add(index,key,text,icon,smallIcon)Add方法中各部分含義如表4-5所示:表4-5Add方法中各部分含義,4.3常用ActiveX控件及其應(yīng)用,4示例例4-3在資質(zhì)管理系統(tǒng)的主窗體Form11中使用了ListView控件,如圖4-20所示。創(chuàng)建步驟如圖4-20窗體Form11。,4.3常用ActiveX控件及其應(yīng)用,(1)設(shè)置控件屬性圖4-20中ListView1控件屬性的設(shè)置如表4-6所示。表4-6ListView1控件屬性的設(shè)置,4

56、.3常用ActiveX控件及其應(yīng)用,(2)使用ListItem的Add方法添加列表項(xiàng)內(nèi)容,將圖片指向ImageList2對象雙擊窗體Form11的空白處,編寫Form_Load事件:PrivateSubForm_Load()Dimi初始化,定義一個(gè)ListView1控件的ListItem對象litemDimlitemAsListItem顯示ListView1控件的圖形ListView1.Icons=ImageList2使用Add方法添加列表項(xiàng)Setlitem=ListView1.ListItems.Add()設(shè)置列表項(xiàng)的文本屬性litem.Text=企業(yè)基本信息設(shè)置列表項(xiàng)的圖標(biāo)屬性,索引號為1

57、litem.Icon=1Setlitem=ListView1.ListItems.Add()litem.Text=人員基本信息litem.Icon=3Setlitem=ListView1.ListItems.Add()litem.Text=在建項(xiàng)目基本信息litem.Icon=2Setlitem=ListView1.ListItems.Add()litem.Text=安全檢查基本信息litem.Icon=4Setlitem=ListView1.ListItems.Add()litem.Text=事故信息litem.Icon=5EndSub,4.3常用ActiveX控件及其應(yīng)用,4.3.2DTP

58、icker控件DTPicker控件可以提供格式化的日期字段,使得進(jìn)行日期選擇很容易。DTPicker控件有兩種操作模式:(1)下拉式日歷模式:為缺省設(shè)置,允許用戶顯示一種能夠用來選擇日期的下拉式日歷;(2)時(shí)間格式模式:允許用戶在日期顯示中選擇一個(gè)字段(例如:月、日、年等等),按下控件右邊的上下箭頭來設(shè)置它的值。DTPicker控件在處理諸如工資表、進(jìn)度表等要求特殊格式的日期、時(shí)間信息時(shí)特別有用。DTPicker控件的應(yīng)用方法如下。,4.3常用ActiveX控件及其應(yīng)用,1添加DTPicker控件DTPicker控件不在標(biāo)準(zhǔn)的工具箱內(nèi)。添加它到工具箱的方法是:(1)選擇“工程部件”菜單項(xiàng),彈出

59、“部件”對話框;(2)在對話框中選擇“控件”選項(xiàng)卡,顯示ActiveX控件的列表;(3)在列表框中選中要添加的控件“MicrosoftWindowsCommonControls-26.0”,單擊控件名稱左側(cè)的復(fù)選框,如圖4-21所示;然后單擊“確定”按鈕即可。圖4-21添加DTPicker控件到工具箱,4.3常用ActiveX控件及其應(yīng)用,上述操作后工具箱內(nèi)出現(xiàn)了DTPicker控件,如圖4-22所示。圖4-22添加DTPicker控件的工具箱,4.3常用ActiveX控件及其應(yīng)用,2DTPicker控件的屬性右擊窗體上的DTPicker控件將出現(xiàn)屬性頁,如圖4-23所示。圖4-23DTPicker控件的屬性頁,4.3常用ActiveX控件及其應(yīng)用,(1)CalendarBackColor和CalendarForeColor屬性CalendarBackColor屬性指定控件中下拉式日歷菜單部分的背景色;CalendarForeColor屬性指定控件中下拉式日歷菜單部分的前景色。(2)CalendarTitleB

溫馨提示

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

最新文檔

評論

0/150

提交評論