Control 對象代表其他控件中的或附加到其他控件的窗體、報表或節(jié)上的控件。
窗體或報表上的所有控件都屬于該 Form 或 Report 對象的 Controls 集合。特定節(jié)中的控件屬于該節(jié)的 Controls 集合。選項卡控件或選項組控件中的控件屬于相應(yīng)控件的 Controls 集合。附加到其他控件的標(biāo)簽控件屬于所附控件的 Controls 集合。
引用 Controls 集合中的單個 Control 對象時,既可以隱式又可以顯式地引用 Controls 集合。
' Implicitly refer to NewData control in Controls
' collection.
Me!NewData
' Use if control name contains space.
Me![New Data]
' Performance slightly slower.
Me("NewData")
' Refer to a control by its index in the controls
' collection.
Me(0)
' Refer to a NewData control by using the subform
' Controls collection.
Me.ctlSubForm.Controls!NewData
' Explicitly refer to the NewData control in the
' Controls collection.
Me.Controls!NewData
Me.Controls("NewData")
Me.Controls(0)
注釋 僅當(dāng)從類模塊的代碼中引用窗體或報表時,才可以使用 Me 關(guān)鍵字來代表 Form 或 Report 對象。從標(biāo)準(zhǔn)模塊、不同窗體或報表的模塊中引用報表或窗體時,必須使用對該窗體或報表的完整引用。
每個 Control 對象都由特定的固有常量表示。例如固有常量 acTextBox 與文本框控件相關(guān)聯(lián),acCommandButton 與命令按鈕相關(guān)聯(lián)。各種 Microsoft Access 控件的常量在控件的 ControlType 屬性中設(shè)置。
若要確定現(xiàn)有控件的類型,請使用 ControlType 屬性。不過,不必了解控件的特定類型即可在代碼中使用控件。只需用 Control 數(shù)據(jù)類型的變量來表示它即可。
如果了解所引用的控件的數(shù)據(jù)類型,并且該控件是內(nèi)置的 Microsoft Access 控件,則應(yīng)該使用特定類型的變量來代表該控件。例如,如以下代碼所示,如果知道特定的控件是文本框之后,則可以聲明一個 TextBox 類型的變量來表示該控件。
Dim txt As TextBox
Set txt = Forms!Employees!LastName
注釋 如果控件是 ActiveX 控件,則必須聲明 Control 類型的變量來代表該控件,不能使用特定的控件類型。如果不能確定變量要指向哪種類型的控件,請將變量的類型聲明為 Control。
選項組控件可以在其 Controls 集合中包含其他控件,包括選項按鈕、復(fù)選框、切換按鈕以及標(biāo)簽控件。
選項卡控件包含一個 Pages 集合,這是一種特殊類型的 Controls 集合。Pages 集合包含全部為控件的 Page 對象。反過來,每個 Page 對象又包含一個 Controls 集合,該集合包含該頁中所有的控件。
其他 Control 對象有一個包含附加標(biāo)簽的 Controls 集合。這些控件包括文本框、選項組、選項按鈕、切換按鈕、復(fù)選框、組合框、列表框、命令按鈕、綁定對象框以及未綁定對象框控件。