




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
掌握常用控件單選鈕、檢查框、框架、滾動條、列表框、組合框、時鐘、數(shù)據(jù)庫訪問控件的常用、屬性、重要事件和方法的使用。本章要求:第8章控件與編輯本章重點:單選鈕、檢查框、框架、滾動條、列表框、組合框、時鐘等的常用、屬性、重要事件和方法的使用。本章難點:列表框、組合框的使用。第8章控件與編輯
單選鈕和復選按鈕單選鈕
1.用途
單選鈕(OptionButton)也稱作選擇按鈕。一組單選鈕控件可以提供一組彼此相互排斥的選項,任何時刻用戶只能從中選擇一個選項,實現(xiàn)一種“單項選擇”的功能,被選中項目左側(cè)圓圈中會出現(xiàn)一黑點。2.重要屬性(1)
Caption:文本標題。設(shè)置單選鈕的文本注釋內(nèi)容。(2)
Alignment屬性:
0:—LeftJustify(缺省設(shè)置)控件鈕在左邊,標題顯示在右邊。
1:—RightJustify控件鈕在右邊,標題顯示在左邊。(3)Value屬性
True:單選鈕被選定False:單選鈕未被選定(缺省設(shè)置)
(4)Style屬性
0--Standard:標準方式 1--Graphical:圖形方式
說明:
在Style屬性設(shè)置為1時,可使用Picture屬性(未選定時的圖標或位圖)
單選鈕和復選按鈕3.方法
SetFocus方法是單選鈕控件最常用的方法,可以在代碼中通過該方法將Value屬性設(shè)置為True。與命令按鈕相同,使用該方法之前,必須要保證單選鈕處于可見和可用狀態(tài)(即Visible與Enabled屬性值均為True)。4.事件
Click事件是單選鈕控件最基本的事件,一般情況用戶無需為單選鈕編寫Click事件過程,因為當用戶單擊單選鈕時,它會自動改變狀態(tài)。
單選鈕和復選按鈕[例]設(shè)計一個程序,用戶界面由四個單選鈕、一個標簽控件和一個命令按鈕組成,程序開始運行后,用戶單擊某個單選鈕,就可將它對應(yīng)的內(nèi)容(星期、日期、月份或年份)顯示在標簽框中。星期:weekday()月:month()年:year()日期:day()如day(now)返回當前日期
單選鈕和復選按鈕復選按鈕1.用途檢查框(CheckBox)也稱作復選框、選擇框。一組檢查框控件可以提供多個選項,它們彼此獨立工作,所以用戶可以同時選擇任意多個選項,實現(xiàn)一種“不定項選擇”的功能。選擇某一選項后,該控件將顯示√,而清除此選項后,√消失。
單選鈕和復選按鈕2.重要屬性
Caption、Alignment、Style與單選鈕相同
檢查框的Value屬性與單選按鈕不同,其值為數(shù)值型數(shù)據(jù),可取0,1,2
檢查框0--Unchecked:未被選定1--Checked:選定2--Grayed:灰色,禁止選擇
單選鈕True:單選鈕被選定False:單選鈕未被選定,
缺省設(shè)置
復選按鈕與單選按鈕Value屬性的比較
單選鈕和復選按鈕3.事件
Click事件是檢查框控件最基本的事件。用戶一般無需為檢查框編寫Click事件過程,但其對Value屬性值的改變遵循以下規(guī)則:單擊未選中的檢查框時,Value屬性值變?yōu)?;單擊已選中的檢查框時,Value屬性值變?yōu)?;單擊變灰的檢查框時,Value屬性值變?yōu)?。
單選鈕和復選按鈕[例]設(shè)計一個程序,由一個文本框、四個復選鈕組成。選擇個人的興趣愛好,如圖所示。
單選鈕和復選按鈕
列表框控件(ListBox)的主要用途在于提供列表式的多個數(shù)據(jù)項供用戶選擇。在列表框中放入若干個項的名字,用戶可以通過單擊某一項或多項來選擇自己所需要的項目。如果放入的項較多,超過了列表框設(shè)計時可顯示的項目數(shù),則系統(tǒng)會自動在列表框邊上加一個垂直滾動條。列表框和組合框1.屬性(1)List屬性該屬性是一個字符串數(shù)組,用來保存列表框中的各個數(shù)據(jù)項內(nèi)容。List數(shù)組的下標從0開始,即List(0)保存表中的第一個數(shù)據(jù)項的內(nèi)容。List(1)保存第二個數(shù)據(jù)項的內(nèi)容,依次類推,List(ListCount-1)保存表中的最后一個數(shù)據(jù)項的內(nèi)容。
(2)ListCount屬性該屬性記錄了列表框中的數(shù)據(jù)項數(shù),該屬性只能在程序中引用它。
列表框和組合框(3)ListIndex屬性該屬性是List數(shù)組中,被選中的列表項的下標值(即索引號)。如果用戶選擇了多個列表項,則ListIndex是最近所選列表項的索引號;如果用戶沒有從列表框中選擇任何一項,則ListIndex為-1。程序運行時,可以使用ListIndex屬性判斷列表框中哪一項被選中。例如,在列表框List1中選中第2項,即List1.List數(shù)組的第2項,則ListIndex=1(ListIndex從0開始)。
ListIndex屬性不能在設(shè)計時設(shè)置,只有程序運行時才起作用。列表框和組合框(4)Text屬性用于存放被選中列表項的文本內(nèi)容。該屬性是只讀的,不能在屬性窗口中設(shè)置,也不能在程序中設(shè)置,只用于獲取當前選定的列表項的內(nèi)容??稍诔绦蛑幸肨ext屬性值(5)Selected屬性該屬性是一個邏輯數(shù)組,其元素對應(yīng)列表框中相應(yīng)的項。表示相應(yīng)的項在程序運行期間是否被選中。例如,Selected(0)的值為True,表示第一項被選中,如為False,表示未被選中列表框和組合框(6)Style屬性該屬性用來設(shè)置列表框或組合框中項目的顯示方式,在運行時是只讀的。對于列表框,其值為0或1。對于組合框,其值為0、1、2。
列表框和組合框(7)MultiSelect屬性用于指示是否能夠在列表框或組合框控件中進行復選以及如何進行復選,在運行時是只讀的。注意,組合框控件無此屬性?!?:(缺省)不允許重選?!?:簡單復選。鼠標單擊或按下空格鍵在列表中選中或取消選中項。箭頭鍵移動焦點?!?:擴展復選。按下Shift并單擊鼠標將在以前選中項的基礎(chǔ)上擴展選擇到當前選中項。按下Ctrl鍵并單擊鼠標表示在列表中選中或取消選定一個選擇項。列表框和組合框(8)NewIndex屬性返回最近加入列表框或組合框控件的項目的索引。如果在列表中已沒有項目或刪除了一個項目,該屬性將返回-1。(9)TopIndex屬性返回或設(shè)置一個值,該值指定哪個項被顯示在列表框或組合框控件頂部的位置。該屬性取值范圍從0到ListCount-1,在設(shè)計時不可用。(10)Sorted屬性返回一個邏輯值,當Sorted屬性為True時列表框或組合框控件的項目自動按字母表順序(升序)排序,為False時項目按加入的先后順序排列顯示。該屬性只能在設(shè)計時設(shè)置,不能在程序代碼中設(shè)置。列表框和組合框2.常用事件(1)Click事件當單擊某一列表項目時,將觸發(fā)列表框與組合框控件的Click事件。該事件發(fā)生時系統(tǒng)會自動改變列表框與組合框控件的ListIndex、Selected、Text等屬性,無需另行編寫代碼。(2)DblClick事件當雙擊某一列表項目時,將觸發(fā)列表框與簡單組合框控件的DblClick事件。(3)Change事件當用戶通過鍵盤輸入改變下拉式組合框或簡單組合框控件的文本框部分的正文,或者通過代碼改變了Text屬性的設(shè)置時,將觸發(fā)其Change事件。列表框和組合框3.方法ListBox對應(yīng)的控件方法有:AddItem,Clear和RemoveItem(1)AddItem方法該方法向一個列表框中加入列表項,其語法是:
<列表框控件名|組合框控件名>.Additem<項目>[,<索引值>](2)RemoveItem方法該方法用于刪除列表框中的列表項,其語法是:
<列表框控件名|組合框控件名>.RemoveItem<索引值>(3)Clear方法 該方法刪除列表框控件中的所有列表項。其語法是:
<列表框控件名|組合框控件名>.Clear(4)獲取用戶選擇 box.List(box.Listindex)列表框和組合框滾動條(ScrollBar)1.用途
滾動條控件(ScrollBar)分為水平滾動條(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
最小變動值,單擊箭頭時移動的增量值。(5)LargeChange
最大變動值,單擊空白處時移動的增量值。滾動條(ScrollBar)3.事件(1)Change事件滾動條的Change事件在移動滾動框或通過代碼改變其Value屬性值時發(fā)生。單擊滾動條兩端的箭頭或空白處將引發(fā)Change事件。(2)Scroll事件當滾動框被重新定位,或按水平方向或垂直方向滾動時,Scroll事件發(fā)生。拖動滑塊時會觸發(fā)Scroll事件。
Scroll事件與Change事件的區(qū)別在于:當滾動條控件滾動時Scroll事件一直發(fā)生,而Change事件只是在滾動結(jié)束之后才發(fā)生一次。滾動條(ScrollBar)例:利用滾動條改變文本框中所顯示文本的字號大小。要求程序運行效果如圖所示。滾動條(ScrollBar)程序代碼如下:
PrivateSubHScroll1_Change()
Label1.Caption=HScroll1.ValueText1.FontSize=HScroll1.ValueEndSub滾動條(ScrollBar)[例]設(shè)計一個程序,在窗體上放置三個水平滾動條,一個文本框,六個標簽,改變?nèi)齻€滾動條的值時,文本框的背景顏色隨之變化滾動條(ScrollBar)1.用途
時鐘控件(Timer)又稱計時器、定時器控件,用于有規(guī)律地定時執(zhí)行指定的工作,常常用于編寫不需要與用戶進行交互就可直接執(zhí)行的代碼,如計時、倒計時、動畫等。
在程序運行階段,時鐘控件不可見。時鐘控件2.屬性(1)Interval屬性取值范圍在0~64767,單位:為毫秒(0.001秒),表示計時間隔。若將Interval屬性設(shè)置為0或負數(shù),則計時器停止工作。
缺省設(shè)置為0(2)Enabled屬性
設(shè)置為True,而且Interval屬性值大于0,則計時器開始工作(以Interval屬性值為間隔,觸發(fā)Timer事件)。設(shè)置為False可使時鐘控件無效,即計時器停止工作。缺省設(shè)置為True時鐘控件3.方法
Timer控件沒有方法。4.事件
時鐘控件只有Timer事件當Enabled屬性值為True且Interval屬性值大于0時,該事件以Interval屬性指定的時間間隔發(fā)生常常將需要定時執(zhí)行的操作放在Timer事件過程中時鐘控件時鐘控件[例]設(shè)計一個程序,在窗體上放置三個水平滾動條,一個文本框,三個時鐘控件,三個標簽,文本框的背景顏色隨時間自動變化??蚣?Frame)
Frame控件為控件提供可標識的分組。它是一個容器控件。當需要在同一窗體內(nèi)建立幾組互獨立的單選鈕時,就需要用框架將每一組單選鈕框框起來,把OptionButton控件分成幾組,如下形式。
框架設(shè)Caption為"字體"框架內(nèi)控件的創(chuàng)建方法:
為了將控件分組,首先需要繪制Frame控件,然后繪制Frame里面的控件。這樣就可以把框架和里面的控件同時移動。如果在Frame外部繪制了一個控件并試圖把它移到框架內(nèi)部,那么控件將在Frame的上部,這時需分別移動Frame和控件。
方法1:單擊工具箱上的工具,然后用出現(xiàn)的“+”指針,在框架中適當位置拖拉出適當大小的控件。不能使用雙擊工具箱上工具的自動方式。
方法2:將控件“剪切”(Ctrl+X)到剪貼板,然后選中框架,使用(Ctrl+V)命令粘貼到框架內(nèi)??蚣?Frame)重要屬性1. Caption屬性:框架標題2 Enabled屬性:缺省為True False:標題呈灰色,不允許對框架內(nèi)的所有對象進行操作。3. Visible屬性:
True:框架及其控件可見。
False:框架及其控件被隱含起來。事件: 框架可以響應(yīng)的事件Click、DblClick
一般不需要有關(guān)框架的事件過程。框架(Frame)[例]設(shè)計一個程序,用戶界面上部有一個標簽,下部有兩個命令鈕,中間有三個框架和九個單選鈕,即將九個單選鈕分為3組,一組用來改變字體,一組用來改變顏色,一組用來改變字的大小。程序運行后,單擊“執(zhí)行”命令鈕,在標簽上顯示一行文字,然后用戶可以在每組中選擇一項,改變文字的字體、顏色和尺寸??蚣艿腃aption屬性框架(Frame)文件系統(tǒng)控件VB提供了3種可直接瀏覽系統(tǒng)目錄結(jié)構(gòu)和文件的控件:
驅(qū)動器列表框、目錄列表框、文件列表框。
驅(qū)動器列表框文件列表框目錄列表框驅(qū)動器列表框(DriveListBox)驅(qū)動器列表框(DriveListBox)控件,通常只顯示當前驅(qū)動器名稱,單擊向下箭頭,就會下拉出計算機擁有的所有磁盤驅(qū)動器,供用戶選擇。1.重要屬性
Drive屬性是驅(qū)動器列表框控件最重要和常用的屬性,該屬性在設(shè)計時不可用。使用格式:
object.Drive[=<字符串表達式>]例如:Drive1.drive=“D:”文件系統(tǒng)控件2.重要事件——Change事件
在程序運行時,當選擇一個新的驅(qū)動器或通過代碼改變Drive屬性的設(shè)置時都會觸發(fā)驅(qū)動器列表框的change事件發(fā)生。目錄列表框(DirListBox)
目錄列表框(DirListBox)控件用來當前驅(qū)動器目錄結(jié)構(gòu)及當前目錄下的所有子文件夾(子目錄)。供用戶選擇其中一個目錄為當前目錄。文件系統(tǒng)控件1.常用屬性
Path屬性是目錄列表框控件的最常用的屬性,用于返回或設(shè)置當前路徑。該屬性在設(shè)計時是不可用的。使用格式:Object.Path[=<字符串表達式>]其中:Object:對象表達式,其值是目錄列表框的對象名。<字符串表達式>:用來表示路徑名的字符串表達式。例如,Dir1.Path="C:\Mydir"。缺省值是當前路徑。說明:
Path屬性也可以直接設(shè)置限定的網(wǎng)絡(luò)路徑如,\\網(wǎng)絡(luò)計算機名\共享目錄名\path文件系統(tǒng)控件2.重要事件——Change事件
與驅(qū)動器列表框一樣,在程序運行時,每當改變當前目錄,即目錄列表框的Path屬性發(fā)生變化時,都要觸發(fā)其Change事件發(fā)生。文件系統(tǒng)控件
文件列表框(FileListBox)控件用來顯示Path屬性指定的目錄中的文件定位并列舉出來。該控件用來顯示所選擇文件類型的文件列表。文件列表框(FilelistBox)1.常用屬性(1)Path屬性
用于返回和設(shè)置文件列表框當前目錄,設(shè)計時不可用。說明:當Path值的改變時,會引發(fā)一個PathChange事件。
文件系統(tǒng)控件此條件也可改為:Len(file1.path)>3(2)Filename屬性
用于返回或設(shè)置被選定文件的文件名,設(shè)計時不可用。
說明:Filename屬性不包括路徑名。
例如:要從文件列表框(File1)中獲得全路徑的文件名Fname$,用下面的程序代碼:
IfRight(file1.path,1)="\"ThenFname$=file1.path&file1.filenameElseFname$=file1.path&"\"&file1.filenameEndIf文件系統(tǒng)控件(3)Pattern屬性
用于返回或設(shè)置文件列表框所顯示的文件類型。可在設(shè)計狀態(tài)設(shè)置或在程序運行時設(shè)置。缺省時表示所有文件。設(shè)置形式為:Object.Pattern[=value]其中value是一個用來指定文件類型的字符串表達式,并可使用包含通配符(“*”和“?”)例如:File1.Pattern="*.txt"File1.Pattern="*.txt;*.Doc“File1.Pattern="???.txt“注意:要指定顯示多個文件類型,使用“;”為分隔符重新設(shè)置Pattern屬性引發(fā)“PatternChange”事件。文件系統(tǒng)控件
2.主要事件Click、DblClick事件:
例如:單擊輸出文件名。
SubfilFile_Click() MsgBoxfilFile.FileName EndSub
例如:雙擊執(zhí)行可執(zhí)行程序SubFile1_DblClick()DimFnameAsStringIfRight(file1.path,1)="\"ThenFname=file1.path&file1.filenameElseFname=file1.path&"\"&file1.filenameEndIfRetVal=Shell(Fname,1)‘執(zhí)行程序EndSub文件系統(tǒng)控件SubDrive1_Change()Dir1.Path=Drive1.DriveEndSubSubDir1_Change()filFile.Path=Dir1.PathEndSub
說明:
要使驅(qū)動器、目錄和文件列表框同步顯示,那么就需要編寫代碼才能使它們之間彼此同步。文件系統(tǒng)控件一、數(shù)據(jù)控件的概念
數(shù)據(jù)控件(Data控件)是VisualBasic中最常見的控件,在工具箱中的圖標為,利用它可以在應(yīng)用程序中訪問前面所創(chuàng)建的數(shù)據(jù)庫。數(shù)據(jù)控件不能顯示數(shù)據(jù),需要與數(shù)據(jù)綁定控件配合使用。
數(shù)據(jù)控件二、數(shù)據(jù)控件常用屬性Connect屬性Connect屬性指定數(shù)據(jù)控件所要連接的數(shù)據(jù)庫類型。VisualBasic6.0提供了7種可訪問的數(shù)據(jù)庫類型,VisualBasic可識別的數(shù)據(jù)庫有:1)MicrosoftAccess的MDB文件(缺省值);2)BorlanddBASE、MicrosoftFoxpro的DBF文件;3)BorlandParadox的DB文件;4)NovellBtrieve的DDF文件;5)MicrosoftExcel的XLS文件;6)Lotus的WKS文件;7)OpenDataBaseConnectivity(ODBC)數(shù)據(jù)庫。2.DatabaseName屬性DatabaseName屬性指定具體使用數(shù)據(jù)庫的名稱,包括所有的路徑名。如果連接的是單表數(shù)據(jù)庫,則DatabaseName屬性應(yīng)設(shè)置為數(shù)據(jù)庫文件所在的子目錄名,而具體文件名放在RecordSource屬性中。如果在“屬性”窗口中單擊DatabasName屬性右邊的按鈕,會出現(xiàn)一個公用對話框用于選擇相應(yīng)的數(shù)據(jù)庫。例如,下面語句設(shè)置了可訪問的數(shù)據(jù)庫名稱:如果連接一個MicrosoftAccess的數(shù)據(jù)庫C:\職員檔案.mdb,則Data1.DatabaseName=”C:\職員檔案.mdb”;如果連接一個Foxpro數(shù)據(jù)庫C:\yang\職員檔案1.dbf,因為Foxpro數(shù)據(jù)庫只含有一個表,則Data1.DatabaseName=”C:\yang”,RecordSource=”職員檔案1.dbf”。如果未寫數(shù)據(jù)庫文件的擴展名,則缺省情況下為使用以.mdb為擴展名的數(shù)據(jù)庫文件。3.RecordSource屬性RecordSource屬性確定具體可訪問的數(shù)據(jù),這些數(shù)據(jù)構(gòu)成記錄集對象Recordset。4)RecordsetType屬性RecordsetType屬性確定記錄集類型。5)ReadOnly屬性在對數(shù)據(jù)庫只查看不修改時,通常將ReadOnly屬性設(shè)置為True,而在運行時根據(jù)一定的條件,響應(yīng)一定的指令后,才將它設(shè)置為False。6)Exclusive屬性Exclusive屬性值設(shè)置為True時,則在通過關(guān)閉數(shù)據(jù)庫撤消這個設(shè)置前,其他任何人不能對數(shù)據(jù)庫訪問。這個屬性的缺省值是False。7)BOFAction、EOFAction屬性當BOFAction值為0,控件重定位到第一個記錄;BOFAction值為1,移過記錄集開始位,定位到一個無效記錄,觸發(fā)數(shù)據(jù)控件對第一個記錄的無效事件。當EOFAction值為0,控件重定位到最后一個記錄;當EOFAction值為1,移過記錄集結(jié)束位,定位到一個無效記錄,觸發(fā)數(shù)據(jù)控件對最后一個記錄的無效事件;EOFAction值為2,向記錄集加入新的空記錄,可以對新紀錄進行編輯,移動記錄指針新紀錄寫入數(shù)據(jù)庫。三、數(shù)據(jù)控件的常用方法1Refresh方法
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年杭州拱墅區(qū)長慶潮鳴街道社區(qū)衛(wèi)生服務(wù)中心招聘編外聘用人員1人模擬試卷附答案詳解
- 家庭瑣事記事作文8篇
- 2025河南民航發(fā)展投資集團有限公司招聘28人考前自測高頻考點模擬試題附答案詳解(突破訓練)
- 2025河南鄭州二七區(qū)一國企招聘各部門人員9人考前自測高頻考點模擬試題附答案詳解(完整版)
- 快樂的郊游抒情作文9篇
- 成本控制與管理流程工具箱
- 寫景:美麗的公園景色(10篇)
- 業(yè)務(wù)提案與需求調(diào)研收集表標準格式
- 2025年樺甸市產(chǎn)業(yè)發(fā)展有限公司招聘模擬試卷及答案詳解(各地真題)
- 2025貴州黔西南州教育局公益性崗位招聘4人模擬試卷及完整答案詳解一套
- XXX公司信息化項目管理辦法
- 人教版(2024新版)七年級上冊英語課文英文原文和翻譯
- 中醫(yī)講糖尿病講課
- 壁掛爐銷售合同
- 新版醫(yī)務(wù)人員法律法規(guī)知識培訓課件
- 創(chuàng)新方法大賽理論知識考核試題題庫及答案
- 2023醫(yī)療質(zhì)量安全核心制度要點釋義(第二版)對比版
- 部編版二年級語文下冊第一單元導學案
- 設(shè)計公司項目經(jīng)理責任制評定、管理辦法(暫行)
- 2021年秋冬智慧樹知道網(wǎng)課《現(xiàn)代農(nóng)業(yè)創(chuàng)新與鄉(xiāng)村振興戰(zhàn)略》課后章節(jié)測試答案
- 電機車點檢表及點檢標準
評論
0/150
提交評論