共用方式為


新增 IDL 屬性

[新增 IDL 屬性精靈] 會將屬性新增至介面定義連結庫 (IDL) 中所定義的介面,例如在包含檔案的 .idl ATL 專案中。 此精靈在支援 MFC 的專案中不適用。

此精靈與 [新增屬性 精靈] 和 [新增 IDL MFC 屬性 精靈] 不同,方式如下:

  • [新增屬性精靈] 會將屬性新增至專案中的介面。
  • [ 新增IDL MFC 屬性 精靈] 專屬於支援 MFC 的 MFC、ActiveX 或 ATL 專案。

若要新增IDL屬性

  1. 在 [檢視] 功能表上,選取 [類別檢視]

  2. 類別檢視中,以滑鼠右鍵按一下您要新增屬性的介面名稱。

    注意

    您也可以將屬性新增至分配介面,除非專案有屬性,否則它會巢狀位於程式庫節點內。

  3. 以滑鼠右鍵按一下介面的名稱。

  4. 從快捷方式功能表中,選取 [新增>屬性]。

  5. 在 [ 新增 IDL 屬性 精靈] 中,提供建立屬性的資訊。

  6. 選取 [ 確定 ] 以新增 屬性。

屬性Get的 和 Put 方法會顯示為類別檢視兩個圖示,其定義所在的介面下。 按兩下任一圖示,即可檢視檔案中的 .idl 屬性宣告。

針對ATL介面, GetPut 函式會新增至 .cpp.h 檔案。

新增IDL屬性精靈

下一節說明您將用來新增 IDL 屬性的 UI:

新增 IDL 屬性的螢幕快照,其中包含兩個參數:[ in ] int i 和 [ in ] char c。傳回類型為 HRESULT。屬性類型為 float。

  • 屬性名稱

    設定屬性的名稱。

  • 屬性類型

    屬性的資料型別。

  • 傳回類型

    針對 ATL 介面,設定 屬性的傳回類型。 針對雙重介面, HRESULT 一律是傳回類型,而且 select 選項無法使用。 若是自訂介面,您可以從清單中選取傳回型別。 HRESULT 仍建議使用 ,因為它提供傳回錯誤的標準方式。

  • Get 函式

    針對ATL介面,建立 Get 擷取屬性值的方法。 選取 [Get]、[Put],或兩者。

  • Put 函式

    針對ATL介面,建立 Put 用來設定屬性值的方法。 選取 [Get]、[Put],或兩者。 如果您選取 Put 函式,您可以從下列兩種方式中選擇來實作 方法:

    選項 描述
    propput PropPut 式會傳回 物件的複本。 propput 是預設值,也是讓屬性可寫入的最常用方式。
    propputref PropPutRef 式會傳回對象的參考,而不是傳回物件本身的複本。 請考慮針對具有初始化額外負荷的大型結構或陣列等物件使用 propputref 選項。
  • 參數

    顯示新增至 屬性的參數清單。 清單中的每個項目是由參數名稱、參數類型和屬性所組成。

    in 表示參數是從呼叫程式傳遞至呼叫的程式。 out 表示指標參數是從呼叫的程式傳回至呼叫程式(從伺服器到用戶端)。

  • +

    新增 參數。 在 [ 參數] 中,輸入參數類型和名稱。 例如, int x,然後選取 [ 確定]。

  • x

    [參數] 移除選取的參數。

  • [鉛筆] 圖示

    編輯選取的參數。

  • 屬性

  1. helpcontext

    指定內容識別碼,讓使用者可在說明檔中檢視此屬性的相關資訊。 如需詳細資訊,請參閱helpcontext

  2. helpstring

    指定用來描述所套用元素的字元字串。 根據預設,它會設定為 property[屬性名稱]。 如需詳細資訊,請參閱helpstring

  3. id

    設定識別屬性的數值識別碼。 此選項不適用於自訂介面的屬性。 如需詳細資訊,請參閱id

  • 其他屬性

MICROSOFT介面定義語言 (MIDL) 中的關鍵詞會在 MIDL 語言參考詳細說明。

選項 描述
bindable 表示支援資料繫結的屬性。 如需詳細資訊,請參閱bindable
defaultbind 表示這個單一可繫結屬性最能代表物件。 如需詳細資訊,請參閱 defaultbind
defaultcollelem 表示屬性是預設集合項目的存取子函式。 如需詳細資訊,請參閱defaultcollelem
displaybind 表示這個屬性應向使用者顯示為可繫結。 如需詳細資訊,請參閱displaybind
hidden 表示屬性存在,但不應該在使用者導向的瀏覽器中顯示。 如需詳細資訊,請參閱hidden
immediatebind 表示該資料庫將立即被告知此資料繫結物件屬性的所有變更。 如需詳細資訊,請參閱immediatebind
local 對 MIDL 編譯器指定屬性不是遠端。 如需詳細資訊,請參閱local
nonbrowsable 標記不應顯示在屬性瀏覽器中的介面或分派介面成員。 如需詳細資訊,請參閱nonbrowsable
requestedit 表示屬性支援 OnRequestEdit 通知。 如需詳細資訊,請參閱requestedit
restricted 指定無法任意呼叫屬性。 如需詳細資訊,請參閱restricted
source 表示屬性的成員是事件來源。 如需詳細資訊,請參閱source

另請參閱

Add 屬性
新增IDL MFC屬性