AccessObjectProperty 對(duì)象代表 AccessObject 對(duì)象的一個(gè)內(nèi)部特性或用戶定義特性。
每個(gè) AccessObject 對(duì)象都包含一個(gè) AccessObjectProperties 集合,而集合中有一個(gè)對(duì)應(yīng)于該 AccessObject 對(duì)象的屬性的 AccessObjectProperty 對(duì)象。用戶也可以定義 AccessObjectProperty 對(duì)象,并將它們追加到某些 AccessObject 對(duì)象的 AccessObjectProperties 集合。
可以為下列對(duì)象創(chuàng)建用戶定義的屬性:
? | CodeData、CodeProject、CurrentProject 和 CurrentData 對(duì)象 |
? | 下列集合中的 AccessObject 對(duì)象: |
CurrentProject 和 CodeProject 對(duì)象集合 |
CodeData 和 CodeProject 對(duì)象集合 |
注釋 從 CurrentData 對(duì)象(例如 CurrentData.AllTables!Table1)衍生的對(duì)象不能訪問(wèn) AccessObjectProperties 集合。對(duì)于以這種方式衍生的對(duì)象,僅可以通過(guò)直接調(diào)用所需的屬性(例如 CurrentData.AllTables!Table1.Name)來(lái)訪問(wèn)其內(nèi)部屬性。
為添加用戶定義屬性,可以使用 Add 方法創(chuàng)建一個(gè) AccessObjectProperty 對(duì)象并將其添加到合適對(duì)象的 AccessObjectProperties 集合,新的 AccessObjectProperty 對(duì)象具有唯一設(shè)置的 Name 屬性和 Value 屬性。要添加用戶定義屬性的對(duì)象必須已經(jīng)添加到集合中。引用尚未追加到 AccessObjectProperties 集合的用戶定義 AccessObjectProperty 對(duì)象時(shí)會(huì)出現(xiàn)發(fā)生錯(cuò)誤;將用戶定義的 AccessObjectProperty 對(duì)象追加到包含同名 AccessObjectProperty 對(duì)象的 AccessObjectProperties 集合時(shí),也會(huì)發(fā)生錯(cuò)誤。
可以從 AccessObjectProperties 集合中刪除用戶定義屬性。
注釋 一個(gè)用戶定義的 AccessObjectProperty 對(duì)象只與對(duì)象的一個(gè)特定實(shí)例相關(guān)。屬性并不是為選定類型的對(duì)象的所有實(shí)例定義的。
AccessObjectProperty 對(duì)象有兩個(gè)內(nèi)部屬性:
? | Name 屬性,唯一標(biāo)識(shí)某屬性的 String。 |
? | Value 屬性,包含屬性設(shè)置的 Variant。 |
若要通過(guò)其序號(hào)或 Name 屬性設(shè)置引用集合中的內(nèi)部或用戶定義 AccessObjectProperty 對(duì)象,請(qǐng)使用以下語(yǔ)法格式之一:
CurrentProject.AllForms("Form1").Properties(0)
CurrentProject.AllForms("Form1").Properties("name")
CurrentProject.AllForms("Form1").Properties![name]
使用同樣的語(yǔ)法格式,還可以引用 AccessObjectProperty 對(duì)象的 Value 屬性。引用的上下文可以確定是對(duì) AccessObjectProperty 對(duì)象自身的引用,還是對(duì) AccessObjectProperty 對(duì)象的 Value 屬性的引用。
注釋 當(dāng)使用“源代碼控件”加載項(xiàng)簽入或簽出與屬性相關(guān)的對(duì)象時(shí),AccessObjectProperties 集合中的屬性并不保存且可以丟失。