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

Visual Basic 控件簡介

編輯:VB綜合教程

  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