DISP_PROPERTY_PARAM
Définit une propriété à laquelle on accède avec des fonctions membres Get et Set séparées.
DISP_PROPERTY_PARAM(theClass, pszExternalName, pfnGet, pfnSet, vtPropType, vtsParams )
Paramètres
theClass
Nom de la classe.pszExternalName
Nom externe de la propriété.pfnGet
Nom de la fonction membre utilisée pour récupérer la propriété.pfnSet
Nom de la fonction membre utilisée pour définir la propriété.vtPropType
Valeur qui spécifie le type de propriété.vtsParams
Une chaîne de types de paramètres variant VTS_ séparés par des espaces, un pour chaque paramètre.
Notes
Contrairement à la macro-instruction DISP_PROPERTY_EX, cette macro-instruction vous permet de spécifier une liste de paramètres pour la propriété. Cette option est utile pour implémenter les propriétés indexées ou paramétrées.
Exemple
Considérez la déclaration suivante des fonctions membre get et set qui permettent aux utilisateurs de demander une ligne et une colonne spécifiques en accédant à la propriété :
SHORT GetArray(SHORT row, SHORT column);
void SetArray(SHORT row, SHORT column, SHORT newVal);
Cela correspond à la macro suivante DISP_PROPERTY_PARAM dans la table de dispatch de contrôle :
DISP_PROPERTY_PARAM(CMFCActiveXControlCtrl, "Array", GetArray, SetArray, VT_I2, VTS_I2 VTS_I2 )
À titre de autre exemple, considérez les fonctions membre get et set suivantes :
IDispatch* GetItem(SHORT index1, SHORT index2, SHORT index3);
void SetItem(SHORT index1, SHORT index2, SHORT index3, IDispatch* pVal);
Cela correspond à la macro suivante DISP_PROPERTY_PARAM dans la table de dispatch de contrôle :
DISP_PROPERTY_PARAM(CMFCActiveXControlCtrl, "Item", GetItem, SetItem, VT_DISPATCH, VTS_I2 VTS_I2 VTS_I2)
Configuration requise
Header: afxdisp.h