2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩47頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第八章 常用控件與系統(tǒng)對象,本章內(nèi)容及要求:1. 掌握常用控件單選鈕(OptionButton)、檢查框(CheckBox)、 框架(Frame)、滾動條(ScrollBar)、 列表框(ListBox)、組合框(ComboBox)、時鐘(Timer)等的常用、 屬性、重要事件和方法的使用;2. 了解一些常用的ActiveX控件(高級控件)的使用。3. 了解一些常用系統(tǒng)對象的使用。,,,,本章重點: 常用控件單選鈕

2、、檢查框、 框架、滾動條、 列表框(ListBox)、組合框(ComboBox)、時鐘(Timer)等的常用 屬性、重要事件和方法的使用;,,,,本章難點: ActiveX控件(高級控件)的使用。 一些常用系統(tǒng)對象的使用。,8.1 單選鈕、檢查框及框架,8.1.1單選鈕 1 用途 單選鈕(OptionButton)也稱作選擇按鈕。一組單選鈕控件可以提供一組彼此相互排斥的選項,任何時刻用戶只能從中選

3、擇一個選項,實現(xiàn)一種“單項選擇”的功能,被選中項目左側(cè)圓圈中會出現(xiàn)一黑點。,,,,,單選按鈕,2. 重要屬性(1) Caption:文本標題。設置單選鈕的文本注釋內(nèi)容。(2) Alignment屬性: 0:—Left Justify(缺省設置)控件鈕在左邊,標題顯示在右邊。 1:—Right Justify 控件鈕在右邊,標題顯示在左邊。(3)Value 屬性,True: 單選鈕被選定False: 單選

4、鈕未被選定(缺省設置),(4) Style 屬性 0--Standard: 標準方式 1--Graphical:圖形方式,,,,說 明: 在Style屬性設置為1時,可使用 Picture 屬性(未選定時的圖標或位圖)、DoWnPicture屬性( 選定時的圖標或位圖)、DisabledPicture屬性(禁止選擇時的圖標或位圖),,,,3 方法 SetFocus方法是單選鈕控件最常用的方法,可以在代碼中

5、通過該方法將Value屬性設置為True。 與命令按鈕相同,使用該方法之前,必須要保證單選鈕處于可見和可用狀態(tài)(即Visible與Enabled屬性值均為True)。,4 事件 Click事件是單選鈕控件最基本的事件,一般情況用戶無需為單選鈕編寫Click事件過程,因為當用戶單擊單選鈕時,它會自動改變狀態(tài)。 例8.1 單選鈕示例(Pg.185)。,,,,8.1.2 檢查框,1 用途 檢查

6、框(CheckBox)也稱作復選框、選擇框。一組檢查框控件可以提供多個選項,它們彼此獨立工作,所以用戶可以同時選擇任意多個選項,實現(xiàn)一種“不定項選擇”的功能。選擇某一選項后,該控件將顯示√,而清除此選項后,√消失。,2. 重要屬性 Caption、Alignment、Style與單選鈕相同,,,,檢查框的Value 屬性與單選按鈕不同,其值為數(shù)值型數(shù)據(jù),可取0,1,2,檢查框與單選按鈕Value 屬性的比較,,,,3 方法

7、 檢查框也可使用SetFocus方法來改變其Value屬性值,其用法與要求同單選鈕。每調(diào)用一次SetFocus方法就會觸發(fā)一次Click事件。,4 事件 Click事件是檢查框控件最基本的事件。用戶一般無需為檢查框編寫Click事件過程,但其對Value屬性值的改變遵循以下規(guī)則:單擊未選中的檢查框時,Value屬性值變?yōu)?;單擊已選中的檢查框時,Value屬性值變?yōu)?;單擊變灰的檢查框時,Value屬性值變?yōu)?。

8、,8.1.3框架 (Frame),Frame 控件為控件提供可標識的分組。當需要在同一窗體內(nèi)建立幾組互獨立的單選鈕時,就需要用框架將每一組單選鈕框框起來,把 OptionButton 控件分成幾組,如下形式。,,,,,框架內(nèi)控件的創(chuàng)建方法: 為了將控件分組,首先需要繪制 Frame 控件,然后繪制 Frame 里面的控件。這樣就可以把框架和里面的控件同時移動。如果在 Frame 外部繪制了一個控件并試圖把它移到

9、框架內(nèi)部,那么控件將在 Frame 的上部,這時需分別移動 Frame 和控件方法1:單擊工具箱上的工具,然后用出現(xiàn)的“+”指針,在框架中適當位置拖拉出適當大小的控件。不能使用雙擊工具箱上工具的自動方式。方法2:將控件“剪切”(Ctrl+X)到剪貼板,然后選中框架,使用 (Ctrl+V)命令粘貼到框架內(nèi)。,,,,重要屬性1.Caption屬性:框架標題2Enabled屬性:缺省為True False

10、:標題呈灰色,不允許對框架內(nèi)的所有對象進行操作。3.Visible屬性: True:框架及其控件可見。 False:框架及其控件被隱含起來。事件:框架可以響應的事件Click、DblClick一般不需要有關(guān)框架的事件過程。例8.2 單選鈕、檢查框及框架用法示例。 Pg.187,,,,8.2 滾動條 (ScrollBar),,,,1 用 途 滾動條控件(ScrollBar)

11、分為水平滾動條(HScrollbar)和垂直滾動條(VscrollBar)二種,通常附在窗體上協(xié)助觀察數(shù)據(jù)或確定位置,也可用作數(shù)據(jù)輸入工具,用來提供某一范圍內(nèi)的數(shù)值供用戶選擇。,2. 屬性(1) Value 滑塊所處位置所代表的值。(2) Max:最大值 -32,768~32,767(3) Min:最小值 -32,768~32,767(4) SmallChange 最小變動值,

12、 單擊箭頭時移動的增量值。(5) LargeChange 最大變動值,單擊空白處時移動的增量值。,,,,,,,,,4 事件(1)Change事件 滾動條的Change事件在移動滾動框或通過代碼改變其Value屬性值時發(fā)生。單擊滾動條兩端的箭頭或空白處將引發(fā)Change事件。(2)Scroll事件當滾動框被重新定位,或按水平方向或垂直方向滾動時,Scroll事件發(fā)生。拖動滑塊時會

13、觸發(fā)Scroll事件 Scroll事件與Change事件的區(qū)別在于:當滾動條控件滾動時Scroll事件一直發(fā)生,而Change事件只是在滾動結(jié)束之后才發(fā)生一次。,,,,例8.3 滾動條示例。設計一個程序進行坐標設置 教材Pg.190,,例8.4 滾動條示例。設計一個用于設置字體顏色的程序.,,,,,8.3 列表框與組合框,,一、用途 列表框控件(ListBox)用于顯示項目列表

14、,用戶可從中選擇一個或多個項目。如果項目總數(shù)超過了可顯示的項目數(shù), VB會自動加上滾動條。 列表框有兩種風格:標準和復選列表框。通過它的Style屬性來設置。如下圖:,,,,,組合框控件(ComboBox)將文本框和列表框的功能結(jié)合在一起,用戶可以在列表中選擇某項(只能選取一項)。或在編輯區(qū)域中直接輸入文本內(nèi)容來選定項目。組合框共三種風格:下拉式組合框、簡單組合框和下拉式列表框(見下圖)。,,二、主要屬性1.List、

15、ListCount和ListIndex屬性,,,,這3個屬性只能在程序代碼中設置: List: 字符型數(shù)組,存放列表框的項目數(shù)據(jù),下標是從0開始的。 例如: List(0)表示第一項(Listindex=0)的內(nèi)容 ListIndex: 為整型值,選中的項目的序號, 沒有項目選中時為-1。 ListCount:為整型值,表示項目的數(shù)量,ListCount-1是最后一項的下標。,,,,2.Styl

16、e屬性 該值用來指示控件的顯示類型和行為。在運行時是只讀的。對于列表框控件或組合框控件都有Style屬性,但它們的含義是不同的,見表8.5和表8.6。,,例如:在窗體上放置2個列表框,將其Style屬性分別設置為0和1;放置3個組合框,將它們Style屬性分別設置為0、1和2。,,,,3.MultiSelect屬性 用于指示是否能夠在列表框控件中進行復選以及如何進行復選,在運行時是只讀的。注意,組合框控件無此屬性。,,表

17、8.7 MultiSelect 屬性設置值及含義,,,,,4.Selected屬性 該屬性返回或設置列表框控件中的一個項目的選擇狀態(tài)。該屬性是一個邏輯類型的數(shù)組,數(shù)組元素個數(shù)與列表框中的項目數(shù)相同,其下標的變化范圍與List屬性相同。 例如:List1.Selected(0)=True表示列表框List1的第一個項目被選中,此時ListIndex的值設置為0。Selected屬性在設計時是不可用的,即無法在屬性窗口

18、中設置屬性值。,5.NewIndex屬性 返回最近加入列表框控件或組合框控件的項目的索引。如果在列表中已沒有項目或刪除了一個項目,該屬性將返回-1。,,,,,6.TopIndex屬性 返回或設置一個值,該值指定哪個項被顯示在列表框控件或組合框控件頂部的位置。該屬性取值范圍從0到ListCount-1,在設計時不可用。7.Sorted屬性返回一個邏輯值,當Sorted屬性為True時列表框控件或組合框控件的項目自

19、動按字母表順序(升序)排序,為False時項目按加入的先后順序排列顯示。該屬性只能在設計時設置,不能在程序代碼中設置。8.Text屬性 對于下拉式組合框與簡單組合框,Text屬性返回編輯區(qū)域中的文本。對于列表框控件或下拉列表框,Text屬性的返回值總與List(ListIndex)的值相同。,,,,,方法1.AddItem方法 用于將項目添加到列表框控件或組合框控件。 語法格式:〈對象名〉.AddIt

20、em item [, index] 其中:item: 為字符串表達式,表示要加入的項目。 Index:決定新增項目的位置,缺省,則添加在最后。 2.RemoveItem方法用于從列表框控件或組合框控件中刪除一項。語法格式:〈對象名〉. RemoveItem index 對index參數(shù)的規(guī)定同AddItem方法。,3.Clear方法 用于清除列表框控件或組合框控件中的所有項

21、目。語法格式:〈對象名〉. Clear例如,要刪除列表框(List1)中所有項目,可使用:List1. Clear,,,,例如,要刪除列表框(List1)中所有選中的項目,可使用下面的程序段:,i = 0Do While i <= List1.ListCount - 1 If List1.Selected(i) = True Then List1.RemoveItem i End If i

22、= i + 1,,,,4、事件(1)Click事件當單擊某一列表項目時,將觸發(fā)列表框與組合框控件的Click事件。該事件發(fā)生時系統(tǒng)會自動改變列表框與組合框控件的ListIndex、Selected、Text等屬性,無需另行編寫代碼。(2)DblClick事件當雙擊某一列表項目時,將觸發(fā)列表框與簡單組合框控件的DblClick事件。(3)Change事件當用戶通過鍵盤輸入改變下拉式組合框或簡單組合框控件的文本框部分的正文,或者

23、通過代碼改變了Text屬性的設置時,將觸發(fā)其Change事件。,,,,例8.5 列表框示例。 設計一個暢銷書排行榜程序。 用戶界面如右圖。,,例8.6 組合框示例。 設計一個用于設置字體屬性的程序,界面如右圖所示。,1 用途 時鐘控件(Timer)又稱計時器、定時器控件,用于有規(guī)律地定時執(zhí)行指定的工作,適合編寫不需要與用戶進行交互就可直接執(zhí)行的代碼,如計時、倒計時、動畫等。在程序運行階

24、段,時鐘控件不可見。,,,,8.4 時鐘,2 屬 性(1)Interval屬性 取值范圍在0 到 64767 之間(包括這兩個數(shù)值),單位為毫秒(0.001秒),表示計時間隔。若將Interval屬性設置為0或負數(shù),則計時器停止工作。(2)Enabled屬性 無論何時,只要時鐘控件的Enabled屬性被設置為True而且Interval屬性值大于0,則計時器開始工作(以Interval屬性值

25、為間隔,觸發(fā)Timer事件)。 通過把Enabled屬性設置為False可使時鐘控件無效,即計時器停止工作。,,,,,,,3 方法 VB沒有為時鐘控件提供有關(guān)的方法。4 事件 時鐘控件只能響應Timer事件,當Enabled屬性值為True且Interval屬性值大于0時,該事件以Interval屬性指定的時間間隔發(fā)生,需要定時執(zhí)行的操作即放在該事件過程中完成。,例8.7 時鐘示例。設計一

26、個計時報警程序,開始時窗體上顯示當前時間,單擊“開始”按鈕10秒鐘后程序結(jié)束。,例8.8 設計一個霓虹燈程序,利用時鐘控件模擬霓虹燈的效果。,,,,*8.5 ActiveX控件,概念: 在VB中除了使用工具箱上的標準控件外,還可以使用微軟以及一些第三方廠商開發(fā)了許多擴展的高級控件,這些控件被稱為ActiveX控件。 使用ActiveX控件,首先應把需要使用的ActiveX控件添加到工具箱中。ActiveX控件文件的類型名

27、為.ocx,一般情況下ActiveX 控件被安裝和注冊在 \Windows\System 或 System32 目錄下。,執(zhí)行“工程”菜單中的“部件”命令,打開“部件”對話框,該對話框中列出當前系統(tǒng)中所有注冊過的ActiveX 控件、可插入對象和ActiveX設計器。,,,,8.5.1 UpDown控件,UpDown控件位于Microsoft Windows Common Controls-2 6.0部件中,其添加到工具箱后的圖標為

28、 。UpDown控件一般與其它控件配套使用,與之配套的控件稱為伙伴控件。,,屬性:,BuddyControl屬性 BuddyProperty屬性 Value屬性 Increment屬性 Min和Max屬性 Wrap屬性,例8.9 UpDown控件示例。,,,,,8.5.2 Slider控件,Slider控件位于Microsoft Windows Common Controls 6.0部件中,其添加到工具箱后的圖標為

29、 。Slider控件包含滑塊和可選擇性刻度標記,與滾動條控件類似,,,Slider控件具有與滾動條控件相類似的基本屬性: 如Min、Max、SmallChange、LargeChange和Value屬性Slider控件的其它屬性:(1)TextPosition屬性: (2)TickFrequency屬性: (3)TickStyle屬性:,Slider控件的常用事件為Scroll和Change,其觸

30、發(fā)條件與滾動條控件相同。,例8.10 Slider控件示例。,,,,8.5.3 ProcessBar控件,ProcessBar控件位于Microsoft Windows Common Controls 6.0部件中,其添加到工具箱后的圖標為 。ProcessBar控件常用于監(jiān)視一個較長操作完成的進度,它通過從左到右用一些方塊填充矩形的形式來表示操作處理的進程。,,ProcessBar控件的屬性設置:,例8.11

31、 ProgressBar控件示例,,,,8.5.4 ImageList控件與ImageCombo控件,ImageList控件與ImageCombo控件均位于Microsoft Windows Common Controls 6.0部件中,其添加到工具箱后的圖標分別為 和 。ImageList控件不能獨立使用,它只是一個向其它控件提供圖象的資料中心,運行時不可見。ImageCombo控件是

32、支持圖片的組合框,控件列表中的每一項都可以有一幅圖片指定給它。,,,例8.12 ImageList控件與ImageCombo控件示例。,,,,8.5.5 SSTab控件,Style:選項卡樣式Tabs:選項卡總數(shù)TabsPerRow:每一行選項卡的數(shù)目Rows:選項卡總行數(shù)TabOrientation:選項卡的位置。ShowFocusRect:決定選項卡上的焦點矩形是否可視。Tab:當前選項卡的序號。序號從0開始,如

33、果Tab為1,則第二個選項卡為當前活動的選項卡。,SSTab控件位于Microsoft Windows Tabbed Dialog Control 6.0部件中,其添加到工具箱后的圖標為,屬性:,,,,,,*8.6 常用系統(tǒng)對象,在Visual Basic系統(tǒng)中,提供許多的系統(tǒng)內(nèi)部對象,用戶在應用程序中,直接可以調(diào)用這些對象。系統(tǒng)對象沒有用戶界面。,8.6.1 App對象,用途: 在應用程序中使用App對象可獲得:應用程

34、序的標題、版本信息、可執(zhí)行文件和幫助文件的路徑及名稱等信息,以及檢查應用程序是否已經(jīng)運行等。,,,,最常用的屬性,,,,例8.13 要限定某用應用程序(*.EXE)必須放在D盤根目錄與應用程序同名的文件夾中才能運行。,可在窗體的Load事件中寫入如下代碼Private Sub Form_Load()If App.EXEName = Mid(App.Path, 4) And _Ucase(Mid(App.Path, 1, 2))

35、= "D:" Then Exit sub Else End End IfEnd Sub,,,,8.6.2 Clipboard 對象,Clipboard 對象用于操作剪貼板上的文本和圖形。它使用戶能夠復制、剪切和粘貼應用程序中的文本和圖形。 所有Windows 應用程序共享 Clipboard 對象,當切換到其它應用程序時,剪貼板內(nèi)容會改變。因此Clipboard(剪

36、貼板)對象提供了應用程序之間信息的傳遞。 Clipboard 對象它沒有屬性和事件,僅提供6個常用的方法。,,,,Clipboard 對象的常用方法 :,1.Clear方法在復制信息到剪貼板之前,應使用Clear方法清除Clipboard對象中的內(nèi)容,使用格式如下:Clipboard.Clear2.SetText方法使用SetText方法將字符串數(shù)據(jù)按指定格式存入剪貼板中,使用格式如下:Clipboard.SetText

37、[,],其參含義見教材Pg.211,,,,3.GetText方法使用此方法從剪貼板中獲得一字符串。其語法格式為:Clipboard.GetText([]),例如,要將剪貼板上的文字粘貼到文本框插入點所在處或替換選中的內(nèi)容,則可使用如下語句:Text1.SelText=Clipboard.GetText(),,,,4.SetData方法將圖形數(shù)據(jù)保存到剪貼板上,要使用SetData方法,其使用語法格式為:Clipboard.Se

38、tData 〈data〉[,format]其中,〈data〉參數(shù)是必需的。為要放到 Clipboard 對象中的圖形數(shù)據(jù)。〈format〉參數(shù)是可選的。一個常數(shù)或數(shù)值,用來指定圖片的格式,其取值見表8.15,如果省略 format,則由系統(tǒng)自動決定圖形格式。,5.GetData方法用此方法從剪貼板中得到圖形,其使用語法格式是:Clipboard.GetData([format]),例8.14,,,,6.GetFormat方法

39、使用GetFormat方法,檢查剪貼板中指定格式的數(shù)據(jù)存在否,它返回一個邏輯值。其語法格式:Clipboard.GetFormat (),例8.15 使用 GetFormat 方法確定剪貼板中是否有Bmp格式數(shù)據(jù),如果有將其粘貼到圖片框picture1中。Private Sub Form_Click () If Clipboard.GetFormat(vbCFBitmap) Then Picture1.picture= Cli

40、pboard.GetData( ) End ifEnd Sub,,,,8.6.3 Screen對象,Screen對象代表了整個Windows桌面。通過Screen對象,還可以在程序運行期間修改屏幕的鼠標指針。,Screen對象的常用屬性,,,,例8.16 打印輸出計算機系統(tǒng)中顯示器或活動打印機可用的所有字體名,其程序如下:Private Sub Command1_Click() Dim I As Integer

41、 For I = 0 To Screen.FontCount - 1 Print Screen.Fonts(I) Next IEnd Sub,,,,8.6.4 Printer對象和Printers集合對象,在VB中,要將處理結(jié)果的數(shù)據(jù)或圖形通過打印機輸出,就必須使用系統(tǒng)提供的Printer對象和Printers集合對象,1.Printer對象,2.Printers集合對象,,,,8.6.5 立即窗口,立即窗口是V

42、isual Basic所提供的全域性(G1obal)系統(tǒng)對象之—、稱為Debug對象,作為調(diào)試之用。此對象除了Print方法外,不具備任何事件和屬性。,在設計狀態(tài)可以在立即窗口中進行一些簡單的命令操作,例如可用“?”或Print(兩者等價)輸出一些表達式的值。,在程序中,可以使用Debug.Print方法將要輸出的信息輸出到立即窗口中;而若要作為立即之用、只要進入“中斷”模式便會出現(xiàn)此窗口。,,,,8.6.6 其他系統(tǒng)對象,除了上述

43、對象外,系統(tǒng)還提供了Control對象、Controls集合對象、Form對象、Forms集合對象。關(guān)于這些對象的使用,限于篇幅不再展開,讀者可以通過系統(tǒng)MSDN幫助獲得詳細的幫助。先舉例說明Control對象、Controls集合對象的使用,Controls集合對象包含窗體上的所有控件,如下程序段是在立即窗口中顯示窗體上的所有控件名稱:Dim x As ControlFor Each x In Form1.ControlsDe

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論