程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> Visual Basic語言 >> VB6 >> vb控件簡介

vb控件簡介

編輯:VB6

Visual Basic控件簡介

可用Visual Basic工具箱中的工具在窗體上繪制控件。

控件分類
Visual Basic的控件有三種廣義分類:
1.內部控件,例如CommandButton和Frame控件。這些控件都在VisualBasic的.exe文件中。內部控件總是出現在工具箱中,不象ActiveX控件和可插入對象那樣可以添加到工具箱中,或從工具箱中刪除。
2.ActiveX控件,是擴展名為.ocx 的獨立文件,其中包括各種版本VisualBasic提供的控件(DataCombo, DataList 控件等等)和僅在專業版和企業版中提供的控件(例如Listview、Toolbar、Animation和TabbedDialog),另外還有許多第三方提供的ActiveX控件。
注意 具有文件擴展名.vbx的控件使用了老的技術,在Visual Basic的早期版本編寫的應用程序中可以找到這些控件。當Visual Basic打開包含.vbx控件的工程時,在缺省情況下用.ocx 控件取代.vbx控件,當然,這只有在控件的.ocx 版本存在時才可以。關於將控件更新為.ocx 格式的信息,請參閱本章後面的“更新舊版VisualBasic控件”一節。
3.可插入的對象,例如一個包含公司所有雇員的列表的Microsoft Excel工作表對象,或者一個包含某工程計劃信息的 Microsoft Project日歷對象。因為這些對象能添加到工具箱中,所以可把它們當作控件使用。其中一些對象還支持自動化(正式的名稱為OLE自動化),使用這種控件就可在Visual Basic應用程序中編程控制另一個應用程序的對象。關於自動化的詳細信息,請參閱第十章“用部件編程”中的“使用對象編程”。
詳細信息 關於Visual Basic專業版和企業版中提供的ActiveX控件的詳細信息,請參閱《部件工具指南》中的“使用ActiveX控件”。

內部控件
下表總結了Visual Basic工具箱中的內部控件。

注意 指針工具(工具箱中的第一個工具)可用來移動窗體和控件,並調整它們的大小。指針工具不是控件。

標准ActiveX控件
Visual Basic學習版包含若干ActiveX控件(稱為標准ActiveX控件),有了這些控件就可在應用程序中引入高級功能。ActiveX控件的文件擴展名為.ocx,可手工將它們添加到工具箱中,以便在工程中使用aq。下表總結了Visual Basic學習版提供的標准ActiveX控件。

詳細信息 關於Visual Basic專業版和企業版中提供的ActiveX控件的詳細信息,請參閱《部件工具指南》中的“使用ActiveX控件”。

添加和刪除ActiveX控件
按照下述步驟在工具箱中添加或刪除ActiveX控件。
要在工具箱中添加ActiveX控件:
1. 在“工程”菜單中選擇“部件”。
2. 選定.ocx控件名旁邊的復選框,然後選擇“確定”。將控件放入工具箱後,就象對待內部控件那樣將它們添加到窗體上。
要刪除ActiveX控件:
1. 在工程的窗體上刪除控件的所有實例。刪除工程代碼中對控件的所有引用。若代碼中還留有被刪除控件的引用,則在編譯應用程序時將顯示出錯信息。
2. 在“工程”菜單中選擇“部件”。清除.ocx控件名旁邊的復選框,然後選擇“確定”。若工程中還有控件的實例,則將顯示出錯信息。
詳細信息 關於在工具箱中添加或刪除控件和可插入對象的詳細信息,請參閱第四章,“工程的管理”中的“在工程中添加控件”。

更新舊版Visual Basic控件
文件擴展名為.vbx的16位舊版Visual Basic控件與此版Visual Basic不兼容。若試圖加載包含.vbx控件的舊工程,Visual Basic將會警告說控件不適用或不兼容,此時,可以繼續加載無.vbx控件的工程,當然,應用程序將無法正常運行。
如果手中有包含第三方.vbx控件的舊版本Visual Basic的工程,請向控件廠商咨詢有關.ocx替代控件的信息。

控件命名約定
第一次創建對象(窗體或控件)時,Visual Basic 將其 Name 屬性設置為缺省值。例如,最初將所有命令按鈕的Name屬性都設置為Commandn,其中 n 為 1、2、3 等等。Visual Basic 將繪制在窗體上的第一個命令按鈕命名為Command1,第二個為Command2,第三個為Command3。
可以保留缺省名稱;但是,如果有幾個同類型控件時,最好將Name屬性改成具有描述性的名稱。因為很難區分MyForm窗體的Command1按鈕與YourForm的Command1按鈕,所以命名約定十分有益,特別是當應用程序包含了若干窗體、標准和類模塊的時候。
可以這樣為控件命名:用前綴描述類,其後為控件的描述性名稱。使用了命名約定,代碼就可自動描述自己並使相似的對象在對象列表框中按字母順序排列。例如,可以這樣來為CheckBox控件命名:
chkReadOnly
為窗體和控件命名的名稱:
1.必須以字母開頭。
2.只能包含字母、數字和下劃線字符 (_);不允許有標點符號字符和空格。
3.不能超過 40 個字符。
詳細信息 關於命名約定的詳細信息,請參閱附錄 B,“Visual Basic 編碼約定”。

使用控件值
所有控件都有一個屬性,只需引用控件名而無需使用屬性名就可利用這個屬性來存儲或獲取數值,稱此屬性為控件的值,這是控件的最重要或最常用屬性。下表列出了每個控件屬性,這些屬性被看成是控件值。

當控件的屬性為該控件的值時,無論何時引用這個屬性都不必在代碼中指定屬性名。例如,下行代碼設置了TextBox控件的Text屬性值:
Text1 = "This text is assigned to the Text property _
of Text1"
在下例中,只要用戶單擊文件列表框中的文件,Label1的Caption屬性就被設置成File1的FileName屬性:
Private Sub File1_Click ()
Label1 = File1
End Sub
注意 由於使用了控件值,代碼的可讀性略受影響,所以本指南中的示例不使用控件值,而是明確引用控件的屬性。兩種方法均可用來編寫代碼,在不引起閱讀困難時可考慮使用控件值。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved