DISP_PROPERTY_PARAM
別の Get,取得 と Set のメンバー関数でアクセスされるプロパティを定義します。
DISP_PROPERTY_PARAM(theClass, pszExternalName, pfnGet, pfnSet, vtPropType, vtsParams )
パラメーター
theClass
クラスの名前。pszExternalName
プロパティの外部名。pfnGet
プロパティを取得するために使用されるメンバー関数の名前。pfnSet
プロパティの設定に使用されたメンバー関数の名前。vtPropType
指定したプロパティ値の型。vtsParams
VTS_ の領域で区切られた異なるパラメーターの型、各パラメーターの 1 の文字列。
解説
DISP_PROPERTY_EX マクロとは異なり、このマクロは、プロパティでパラメーター リストを指定できるようにします。これは、インデックス付きか、またはパラメーター化されたプロパティを実装するために役立ちます。
使用例
次の宣言を取得しますがあるとプロパティにアクセスするときに特定の行と列を要求できるメンバー設定は機能します:
SHORT GetArray(SHORT row, SHORT column);
void SetArray(SHORT row, SHORT column, SHORT newVal);
これらは、コントロールのディスパッチ マップの DISP_PROPERTY_PARAM の次のマクロに対応しています:
DISP_PROPERTY_PARAM(CMFCActiveXControlCtrl, "Array", GetArray, SetArray, VT_I2, VTS_I2 VTS_I2 )
別の例として、次取得および設定のメンバー関数があります:
IDispatch* GetItem(SHORT index1, SHORT index2, SHORT index3);
void SetItem(SHORT index1, SHORT index2, SHORT index3, IDispatch* pVal);
これらは、コントロールのディスパッチ マップの DISP_PROPERTY_PARAM の次のマクロに対応しています:
DISP_PROPERTY_PARAM(CMFCActiveXControlCtrl, "Item", GetItem, SetItem, VT_DISPATCH, VTS_I2 VTS_I2 VTS_I2)
必要条件
ヘッダー : afxdisp.h