次の方法で共有


(プロパティの追加ウィザード)

このウィザードを使用して、インターフェイスにプロパティを追加します。

  • [プロパティの型]
    追加するプロパティの型を設定します。 MFC ディスパッチ インターフェイスでは、型を指定するか、または定義済みの一覧から選択します。 プロパティのストック実装を提供する場合、[プロパティの種類] はストックの型に設定され、変更できません。

  • [プロパティ名]
    プロパティの名前を設定します。 ActiveX コントロールに関連付けられている MFC ディスパッチ インターフェイスでは、独自の名前を指定するか、または定義済みの一覧からストック プロパティ名を選択できます。 独自のプロパティ名を指定すると、実装型の [ストック] は使用できません。 一覧のプロパティについては、「ストック プロパティ」を参照してください。

    インターフェイスの種類

    説明

    ATL デュアル インターフェイス、カスタム インターフェイス、およびローカル カスタム インターフェイス

    プロパティ名を指定します。

    MFC ディスパッチ インターフェイス、MFC ActiveX コントロール ディスパッチ インターフェイス

    プロパティ名を指定するか、または一覧からストック プロパティを選択します。 一覧からプロパティを選択すると、[プロパティの種類] ボックスに適切な値が表示されます。 [実装型] の選択内容によっては、表示された型を変更できます。

  • [戻り値の型]
    ATL インターフェイス専用です。 プロパティの戻り値の型を設定します。 デュアル インターフェイスでは、戻り値の型が常に HRESULT であり、このボックスは使用できません。 カスタム インターフェイスの場合、一覧から戻り値の型を選択できます。 HRESULT は、エラーを返すための標準的な方法を提供するので、この値を推奨します。

  • [変数名]
    MFC ディスパッチ インターフェイス専用です。 [実装型] の [メンバー変数] を指定した場合にだけ使用できます。 プロパティが関連付けられるメンバー変数の名前を設定します。 既定では、変数名は m_PropertyName に設定されます。 この名前は編集できません。

  • [通知関数]
    MFC ディスパッチ インターフェイス専用です。 [実装型] の [メンバー変数] を指定した場合にだけ使用できます。 プロパティが変更された場合に呼び出す通知関数の名前を設定します。 既定では、通知関数の名前は OnPropertyNameChanged に設定されます。 この名前は編集できません。

  • [Get 関数]
    MFC ディスパッチ インターフェイス用です。 [実装型] の [Get/Set メソッド] を指定した場合にだけ使用できます。 プロパティを取得するために使用する関数名を設定します。 既定では、Get 関数の名前は GetPropertyName に設定されます。 この名前は編集できません。 名前を削除すると、GetNotSupported 関数がインターフェイス ディスパッチ マップに挿入されます。 GetPropertyName 関数は、読み取り可能なプロパティとして指定します。

  • [Set 関数]
    MFC ディスパッチ インターフェイス専用です。 [実装型] の [Get/Set メソッド] を指定した場合にだけ使用できます。 プロパティを設定するために使用する関数名を設定します。 既定では、Set 関数の名前は SetPropertyName に設定されます。 この名前は編集できません。 名前を削除すると、SetNotSupported 関数がインターフェイス ディスパッチ マップに挿入されます。 SetPropertyName 関数は、書き込み可能なプロパティとして指定します。

  • [実装型]
    MFC ディスパッチ インターフェイス専用です。 追加するプロパティの実装方法を指定します。

    実装型

    説明

    [ストック]

    [プロパティ名] で選択したプロパティのストック実装を指定します。 既定値です。 詳細については、「ストック プロパティ」を参照してください。

    [ストック] を指定すると、[プロパティの種類]、[パラメーターの型]、および [パラメーター名] は淡色表示になります。

    [メンバー変数]

    プロパティをメンバー変数として追加するように指定します。 カスタム プロパティまたはほとんどのストック プロパティをメンバー変数として追加できます。 [Caption]、[hWnd]、および [Text] プロパティに対しては、[メンバー変数] を指定できません。

    [関数名] と [通知関数] には既定の名前が表示されます。 この名前は編集できません。

    [Get/Set メソッド]

    既定では、プロパティを GetPropertyName 関数および SetPropertyName 関数として追加するように指定します。 これら関数名は、[Get 関数] と [Set 関数] に表示されます。

    Get 関数に値を渡す [プロパティの種類] の既定値を変更できます。 Get 関数と Set 関数のパラメーターを指定できます。

  • [Get 関数]
    ATL インターフェイス用です。 プロパティを読み取り可能として設定します。つまり、オブジェクトからこのプロパティを取得する Get メソッドを作成します。 [Get 関数]、[Put 関数]、またはその両方を選択する必要があります。

  • [Put 関数]
    ATL インターフェイス専用です。 プロパティを書き込み可能として設定します。つまり、オブジェクトのこのプロパティを設定する Put メソッドを作成します。 [Get 関数]、[Put 関数]、またはその両方を選択する必要があります。 このオプションを選択すると、メソッドを実装する方法を次の 2 つから選択できます。

    オプション

    説明

    [PropPut]

    PropPut 関数はオブジェクトのコピーを返します。 これは既定値であり、プロパティを書き込み可能にする最も一般的な方法です。

    [PropPutRef]

    PropPutRef 関数は、オブジェクト自体のコピーではなくオブジェクトへの参照を返します。 通常、初期化のオーバヘッドが発生する可能性がある大規模な構造体や配列などのオブジェクトには、このオプションを使用します。

  • [パラメーターの属性]
    ATL インターフェイス専用です。 [パラメーター名] によって指定されたパラメーターに [in]、[out]、その両方、指定なしのいずれかを設定します。

    オプション

    説明

    [in]

    呼び出し元のプロシージャから呼び出し先のプロシージャにパラメーターが渡されることを示します。

    [out]

    呼び出し先のプロシージャから呼び出し元のプロシージャに (サーバーからクライアントに) ポインター パラメーターが返されることを示します。

  • [パラメーターの型]
    パラメーターのデータ型を設定します。 一覧から型を選択します。

  • [パラメーター名]
    プロパティにパラメーターがある場合は、プロパティに追加するパラメーターの名前を設定します。 [追加] をクリックすると、入力したパラメーター名が [パラメーターの一覧] に表示されます。

  • [パラメーターの一覧]
    プロパティに追加される属性の一覧が表示されます。 一覧の項目は、パラメーター名、パラメーター型、および属性です。 [追加] および [削除] を使用して一覧を更新します。

  • [追加]
    [パラメーター名] と [パラメーターの型] で指定したパラメーターを [パラメーターの一覧] に追加します。 パラメーターを一覧に追加するには [追加] をクリックする必要があります。

  • [削除]
    [パラメーターの一覧] で選択したパラメーターを削除します。

  • [既定のプロパティ]
    MFC ディスパッチ インターフェイス専用です。 このプロパティをインターフェイスの既定値として設定します。 インターフェイスの既定のプロパティは 1 つだけです。既定のプロパティを指定すると、インターフェイスに追加するその他のプロパティについてはこのボックスを使用できません。

参照

処理手順

プロパティの追加

インターフェイスの実装

参照

[IDL 属性] (プロパティの追加ウィザード)