Share via


Classe CMFCPropertyGridProperty

Un CMFCPropertyGridProperty objet représente un élément de liste dans un contrôle de liste de propriétés.

Pour plus d’informations, consultez le code source situé dans le mfc dossier de votre installation de Visual Studio. Par exemple, %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc

Syntaxe

class CMFCPropertyGridProperty : public CObject

Membres

Constructeurs publics

Nom Description
CMFCPropertyGridProperty::CMFCPropertyGridProperty Construit un objet CMFCPropertyGridProperty.
CMFCPropertyGridProperty::~CMFCPropertyGridProperty Destructeur.

Méthodes publiques

Nom Description
CMFCPropertyGridProperty::AddOption Ajoute un nouvel élément de liste à un contrôle de liste de propriétés.
CMFCPropertyGridProperty::AddSubItem Ajoute un élément enfant à une propriété.
CMFCPropertyGridProperty::AdjustButtonRect Appelé par le contrôle de liste de propriétés parent pour indiquer à une propriété de redimensionner le rectangle englobant d’un bouton incorporé.
CMFCPropertyGridProperty::AdjustInPlaceEditRect Récupère les limites de la zone de texte et du contrôle de bouton spin facultatif utilisé pour définir une valeur de propriété.
CMFCPropertyGridProperty::AllowEdit Rend une propriété modifiable ou en lecture seule.
CMFCPropertyGridProperty::CreateInPlaceEdit Appelé par l’infrastructure pour créer un contrôle modifiable pour une propriété.
CMFCPropertyGridProperty::CreateSpinControl Appelé par l’infrastructure pour créer un contrôle de bouton de rotation modifiable.
CMFCPropertyGridProperty::Enable Active ou désactive une propriété.
CMFCPropertyGridProperty::EnableSpinControl Active ou désactive un contrôle de bouton de rotation utilisé pour modifier une valeur de propriété.
CMFCPropertyGridProperty::Expand Développe ou réduit une propriété qui contient des sous-propriétés.
CMFCPropertyGridProperty::FormatProperty Met en forme la représentation textuelle d'une valeur de propriété.
CMFCPropertyGridProperty::GetData Récupère une valeur DWORD associée à une propriété.
CMFCPropertyGridProperty::GetDescription Récupère une description de propriété.
CMFCPropertyGridProperty::GetExpandedSubItems Récupère le nombre de sous-éléments développés.
CMFCPropertyGridProperty::GetHierarchyLevel Récupère l’index de base zéro du niveau de hiérarchie de la propriété.
CMFCPropertyGridProperty::GetName Récupère le nom de la propriété.
CMFCPropertyGridProperty::GetNameTooltip Appelé par l’infrastructure pour afficher le nom de la propriété dans une info-bulle.
CMFCPropertyGridProperty::GetOption Récupère le texte de l’option spécifiée par un index.
CMFCPropertyGridProperty::GetOptionCount Récupère le nombre d’options qui appartiennent à une propriété.
CMFCPropertyGridProperty::GetOriginalValue Récupère la valeur initiale de la propriété actuelle.
CMFCPropertyGridProperty::GetParent Récupère un pointeur vers une propriété parente.
CMFCPropertyGridProperty::GetRect Récupère le rectangle englobant d’une propriété.
CMFCPropertyGridProperty::GetSubItem Récupère une sous-propriété identifiée par un index de base zéro.
CMFCPropertyGridProperty::GetSubItemsCount Récupère le nombre de sous-éléments.
CMFCPropertyGridProperty::GetThisClass Utilisé par l’infrastructure pour obtenir un pointeur vers l’objet CRuntimeClass associé à ce type de classe.
CMFCPropertyGridProperty::GetValue Récupère une valeur de propriété.
CMFCPropertyGridProperty::GetValueTooltip Appelé par l’infrastructure pour récupérer la représentation textuelle de la valeur de propriété qui est ensuite affichée dans une info-bulle.
CMFCPropertyGridProperty::HitTest Pointe vers l’objet de propriété qui correspond à l’élément de liste de propriétés qui correspond à un point.
CMFCPropertyGridProperty::IsAllowEdit Indique si une propriété est modifiable.
CMFCPropertyGridProperty::IsEnabled Indique si une propriété est activée ou désactivée.
CMFCPropertyGridProperty::IsExpanded Indique si une propriété est développée ou réduite.
CMFCPropertyGridProperty::IsGroup Indique si la propriété actuelle représente un groupe.
CMFCPropertyGridProperty::IsInPlaceEditing Indique si la propriété actuelle est modifiable.
CMFCPropertyGridProperty::IsModified Indique si la propriété actuelle est modifiée.
CMFCPropertyGridProperty::IsParentExpanded Indique si les parents de la propriété actuelle sont développés.
CMFCPropertyGridProperty::IsSelected Indique si la propriété actuelle est sélectionnée.
CMFCPropertyGridProperty::IsVisible Indique si la propriété actuelle est visible.
CMFCPropertyGridProperty::OnClickButton Appelé par l’infrastructure lorsque l’utilisateur sélectionne un bouton contenu dans une propriété.
CMFCPropertyGridProperty::OnClickName Appelé par un contrôle de liste de propriétés parent quand un utilisateur sélectionne le champ nom d’une propriété.
CMFCPropertyGridProperty::OnClickValue Appelé par un contrôle de liste de propriétés parent quand un utilisateur sélectionne le champ valeur d’une propriété.
CMFCPropertyGridProperty::OnCloseCombo Appelé par l’infrastructure lorsqu’une zone de liste modifiable contenue dans une propriété est fermée.
CMFCPropertyGridProperty::OnDblClk Appelé par l’infrastructure lorsque l’utilisateur double-clique sur une propriété.
CMFCPropertyGridProperty::OnDrawButton Appelé par l’infrastructure pour dessiner un bouton contenu dans une propriété.
CMFCPropertyGridProperty::OnDrawDescription Appelé par l’infrastructure pour afficher la description de la propriété.
CMFCPropertyGridProperty::OnDrawExpandBox Appelé par l’infrastructure pour dessiner un contrôle de zone de développement près d’une propriété qui contient des sous-propriétés.
CMFCPropertyGridProperty::OnDrawName Appelé par l’infrastructure pour afficher le nom de la propriété.
CMFCPropertyGridProperty::OnDrawValue Appelé par l'infrastructure pour afficher la valeur de propriété.
CMFCPropertyGridProperty::OnEdit Appelé par l'infrastructure quand l'utilisateur s'apprête à modifier une valeur de propriété.
CMFCPropertyGridProperty::OnEndEdit Appelé par l’infrastructure lorsque l’utilisateur a terminé de modifier une valeur de propriété.
CMFCPropertyGridProperty::OnKillSelection
CMFCPropertyGridProperty::OnPosSizeChanged
CMFCPropertyGridProperty::OnRClickName Appelé par l’infrastructure lorsque l’utilisateur sélectionne le bouton droit de la souris dans la zone de nom de propriété.
CMFCPropertyGridProperty::OnRClickValue Appelé par l’infrastructure lorsque l’utilisateur sélectionne le bouton droit de la souris dans la zone de valeur de propriété.
CMFCPropertyGridProperty::OnSelectCombo Appelé par l’infrastructure lorsque l’utilisateur sélectionne un élément dans la zone de liste modifiable.
CMFCPropertyGridProperty::OnSetCursor Appelé par l’infrastructure lorsque le pointeur de la souris se déplace vers un élément de propriété.
CMFCPropertyGridProperty::OnSetSelection
CMFCPropertyGridProperty::OnUpdateValue Appelé par l'infrastructure quand la valeur d'une propriété modifiable a changé.
CMFCPropertyGridProperty::PushChar Appelé à partir du contrôle de liste de propriétés lorsque la propriété est sélectionnée et que l’utilisateur entre un nouveau caractère.
CMFCPropertyGridProperty::Redraw Redessine la propriété.
CMFCPropertyGridProperty::RemoveAllOptions Supprime toutes les options (éléments) d’une propriété.
CMFCPropertyGridProperty::RemoveSubItem Supprime le sous-élément spécifié.
CMFCPropertyGridProperty::ResetOriginalValue Restaure la valeur d’origine d’une propriété modifiée.
CMFCPropertyGridProperty::SetData Associe une valeur DWORD à une propriété.
CMFCPropertyGridProperty::SetDescription Spécifie le texte qui décrit la propriété actuelle.
CMFCPropertyGridProperty::SetName Définit le nom d’une propriété.
CMFCPropertyGridProperty::SetOriginalValue Définit la valeur d'origine d'une propriété modifiable.
CMFCPropertyGridProperty::SetValue Définit la valeur d’une propriété de grille de propriétés.
CMFCPropertyGridProperty::Show Affiche ou masque une propriété.

Méthodes protégées

Nom Description
CMFCPropertyGridProperty::CreateCombo Appelé par l’infrastructure pour ajouter une zone de liste modifiable à une propriété.
CMFCPropertyGridProperty::HasButton Indique si une propriété contient un bouton.
CMFCPropertyGridProperty::Init Appelé par l’infrastructure pour initialiser un objet de propriété.
CMFCPropertyGridProperty::IsSubItem Indique si la propriété spécifiée est un sous-élément de la propriété actuelle.
CMFCPropertyGridProperty::IsValueChanged Indique si la valeur de la propriété actuelle a changé.
CMFCPropertyGridProperty::OnCtlColor Appelé par l’infrastructure lorsqu’il doit récupérer un pinceau pour remplir la couleur d’arrière-plan d’une propriété.
CMFCPropertyGridProperty::OnDestroyWindow Appelé par l’infrastructure lorsqu’une propriété est détruite ou lorsque la modification est terminée.
CMFCPropertyGridProperty::OnKillFocus Appelé par l’infrastructure lorsque la propriété perd le focus d’entrée.

Données membres

Nom Description
CMFCPropertyGridProperty::m_strFormatDouble Chaîne de format pour une valeur de type double.
CMFCPropertyGridProperty::m_strFormatFloat Chaîne de format pour une valeur de type float.
CMFCPropertyGridProperty::m_strFormatLong Chaîne de format pour une valeur de type long.
CMFCPropertyGridProperty::m_strFormatShort Chaîne de format pour une valeur de type court.

Notes

Utilisez un CMFCPropertyGridProperty objet pour représenter une propriété, que vous ajoutez ensuite à un contrôle de liste de propriétés. Pour plus d’informations, consultez CMFCPropertyGridCtrl Classe.

Un objet de propriété peut représenter des types de données tels que des chaînes, des dates et des valeurs booléennes ou entières. Il peut contenir des propriétés enfants ou contenir un contrôle tel qu’une zone de liste modifiable ou un contrôle bouton.

Exemple

L’exemple suivant montre comment construire un CMFCPropertyGridProperty objet. L’exemple montre également comment utiliser différentes méthodes dans la CMFCPropertyGridProperty classe pour ajouter une option, ajouter un sous-élément, activer une propriété et afficher une propriété. Cet exemple fait partie de l’exemple New Controls.

CMFCPropertyGridProperty *pGroup1 = new CMFCPropertyGridProperty(_T("Appearance"));

// construct a COleVariant object.
COleVariant var3DLook((short)VARIANT_FALSE, VT_BOOL);

pGroup1->AddSubItem(new CMFCPropertyGridProperty(_T("3D Look"), var3DLook,
                                                 _T("Specifies the dialog's font will be nonbold and controls will have a 3D border")));

CMFCPropertyGridProperty *pProp = new CMFCPropertyGridProperty(_T("Border"),
                                                               _T("Dialog Frame"), _T("One of: None, Thin, Resizable, or Dialog Frame"));
pProp->AddOption(_T("None"));
pProp->AddOption(_T("Thin"));
pProp->AddOption(_T("Resizable"));
pProp->AddOption(_T("Dialog Frame"));
pProp->AllowEdit(FALSE);

pGroup1->AddSubItem(pProp);
pGroup1->AddSubItem(new CMFCPropertyGridProperty(_T("Caption"), (COleVariant) _T("About NewControlsDemo"), _T("Specifies the text that will be displayed in the dialog's title bar")));
pGroup1->AdjustButtonRect();
pGroup1->AllowEdit();
pGroup1->Enable();
pGroup1->Show();
pGroup1->Redraw();

Hiérarchie d'héritage

CObject

CMFCPropertyGridProperty

Spécifications

En-têteafxpropertygridctrl.h:

CMFCPropertyGridProperty::AddOption

Ajoute un nouvel élément de liste à un contrôle de liste de propriétés.

BOOL AddOption(
    LPCTSTR lpszOption,
    BOOL bInsertUnique=TRUE);

Paramètres

lpszOption
[in] Élément de liste (option) à ajouter.

bInsertUnique
[in] TRUE pour ajouter l’élément de liste uniquement s’il n’existe pas déjà ; sinon, FALSE. La valeur par défaut est TRUE.

Valeur de retour

TRUE, ce qui signifie que l’élément de liste est ajouté. Sinon, FALSEcela signifie que l’élément de liste n’est pas ajouté, car le bInsertUnique paramètre est TRUE et l’élément de liste spécifié par le lpszOption paramètre existe déjà.

CMFCPropertyGridProperty::AddSubItem

Ajoute un élément enfant à une propriété.

BOOL AddSubItem(CMFCPropertyGridProperty* pProp);

Paramètres

pProp
[in] Pointeur vers une propriété à ajouter.

Valeur de retour

TRUE si la propriété spécifiée est correctement ajoutée en tant que propriété enfant. FALSE si la propriété n’est pas ajoutée, car elle se produit déjà dans la propriété parente.

Notes

Utilisez cette méthode pour créer une liste hiérarchique de propriétés parent et enfant. Une fois qu’une propriété enfant est ajoutée, la propriété parente affiche automatiquement un contrôle de zone de développement désigné par un signe plus (+). Lorsque l’utilisateur sélectionne le signe plus, la propriété parente se développe et affiche tous les éléments de propriété enfants.

CMFCPropertyGridProperty::AdjustButtonRect

Appelé par le contrôle de liste de propriétés parent pour indiquer à une propriété de redimensionner le rectangle englobant d’un bouton incorporé.

virtual void AdjustButtonRect();

Notes

Par défaut, cette méthode :

  • Ajuste la largeur du bouton égale à la hauteur du bouton plus trois pixels.
  • Déplace le rectangle englobant du bouton vers le bord droit de la propriété.
  • Déplace le bouton 1 pixel en dessous du bord supérieur de la propriété.

CMFCPropertyGridProperty::AdjustInPlaceEditRect

Récupère les limites de la zone de texte et du contrôle de bouton spin facultatif utilisé pour définir une valeur de propriété.

virtual void AdjustInPlaceEditRect(
    CRect& rectEdit,
    CRect& rectSpin);

Paramètres

rectEdit
[out] Lorsque cette méthode est retournée, un rectangle qui spécifie les limites de la zone de texte pour la valeur de propriété.

rectSpin
[out] Lorsque cette méthode est retournée, un rectangle qui spécifie les limites du contrôle de bouton spin pour la valeur de propriété. Ou, si la propriété ne prend pas en charge un bouton spin, un rectangle vide.

Notes

La zone de valeur d’une propriété se compose d’une zone de texte et éventuellement d’un bouton d’option, tel qu’un contrôle de bouton de rotation. Cette méthode calcule les dimensions de la zone de texte et du bouton d’option, puis retourne ces valeurs dans les paramètres spécifiés.

CMFCPropertyGridProperty::AllowEdit

Rend une propriété modifiable ou en lecture seule.

void AllowEdit(BOOL bAllow=TRUE);

Paramètres

bAllow
[in] TRUE pour rendre la propriété modifiable ; FALSE pour rendre la propriété en lecture seule. La valeur par défaut est TRUE.

CMFCPropertyGridProperty::CMFCPropertyGridProperty

Construit un objet CMFCPropertyGridProperty.

CMFCPropertyGridProperty(
    const CString& strGroupName,
    DWORD_PTR dwData=0,
    BOOL bIsValueList=FALSE);

CMFCPropertyGridProperty(
    const CString& strName,
    const _variant_t& varValue,
    LPCTSTR lpszDescr=NULL,
    DWORD_PTR dwData=0,
    LPCTSTR lpszEditMask=NULL,
    LPCTSTR lpszEditTemplate=NULL,
    LPCTSTR lpszValidChars=NULL);

Paramètres

strGroupName
[in] Nom du groupe. Un groupe est une collection de propriétés associées dans un contrôle de grille de propriétés. Si le contrôle est affiché hiérarchiquement, le nom du groupe s’affiche sous la forme d’un titre de catégorie dans la ligne au-dessus du groupe.

dwData
[in] Données spécifiques à l’application, telles qu’un entier ou un pointeur vers d’autres données associées à la propriété. La valeur par défaut est 0.

strName
[in] Nom de la propriété.

varValue
[in] Valeur de propriété.

lpszDescr
[in] Description de la propriété. La valeur par défaut est NULL.

lpszEditMask
[in] Masque de modification, si la propriété est un contrôle d’édition masqué. La valeur par défaut est NULL.

lpszEditTemplate
[in] Modèle de modification, si la propriété est un contrôle d’édition masqué. La valeur par défaut est NULL.

lpszValidChars
[in] Liste de caractères valides, si la propriété est un contrôle de modification masqué. La valeur par défaut est NULL.

bIsValueList
[in] TRUE si la propriété représente une liste de valeurs ; FALSE si la propriété représente une valeur unique. La valeur par défaut est FALSE.

CMFCPropertyGridProperty::CreateCombo

Appelé par l’infrastructure pour ajouter une zone de liste modifiable à une propriété.

virtual CComboBox* CreateCombo(
    CWnd* pWndParent,
    CRect rect);

Paramètres

pWndParent
[in] Pointeur vers la fenêtre parente de la zone de liste modifiable.

rect
[in] Rectangle englobant de la zone de liste déroulante.

Valeur de retour

Pointeur vers un nouvel CComboBox objet.

CMFCPropertyGridProperty::CreateInPlaceEdit

Appelé par l’infrastructure pour créer un contrôle modifiable pour une propriété.

virtual CWnd* CreateInPlaceEdit(
    CRect rectEdit,
    BOOL& bDefaultFormat);

Paramètres

rectEdit
[in] Rectangle englobant du contrôle modifiable.

bDefaultFormat
[in] TRUE pour utiliser le format de propriété par défaut pour définir le texte du contrôle modifiable ; sinon, FALSE.

Valeur de retour

Pointeur vers le contrôle modifiable si cette méthode réussit ; sinon, NULL.

Notes

Cette méthode utilise les valeurs du constructeur de varValueclasse , lpszEditMask, lpszEditTemplateet lpszValidChars des paramètres spécifiés dans le CMFCPropertyGridProperty constructeur de classe. Par défaut, cette méthode prend en charge les varValue types de variantes. Cela inclut VT_BSTR, VT_R4VT_R8VT_UI1, VT_UINTVT_I2VT_I4VT_UI2VT_INTVT_UI4et .VT_BOOL

Cette méthode crée un CMFCMaskedEdit contrôle si un ou plusieurs paramètres sont lpszEditMasklpszEditTemplatelpszValidChars spécifiés ; sinon, il crée un CEdit contrôle.

CMFCPropertyGridProperty::CreateSpinControl

Appelé par l’infrastructure pour créer un contrôle de bouton de rotation modifiable.

virtual CSpinButtonCtrl* CreateSpinControl(CRect rectSpin);

Paramètres

rectSpin
[in] Rectangle qui définit l’emplacement où le contrôle de bouton de rotation modifiable est créé.

Valeur de retour

Pointeur vers un nouvel CMFCSpinButtonCtrl objet qui est casté en tant que pointeur vers un CSpinButtonCtrl objet.

Notes

Appelez la CMFCPropertyGridProperty::EnableSpinControl méthode pour afficher un contrôle de bouton de rotation modifiable au bord droit de la propriété.

CMFCPropertyGridProperty::Enable

Active ou désactive une propriété.

void Enable(BOOL bEnable=TRUE);

Paramètres

bEnable
[in] TRUE pour activer la propriété ; FALSE pour désactiver la propriété. Les propriétés désactivées ne répondent pas à l’entrée de la souris ou du clavier. La valeur par défaut est TRUE.

CMFCPropertyGridProperty::EnableSpinControl

Active ou désactive un contrôle de bouton de rotation utilisé pour modifier une valeur de propriété.

void EnableSpinControl(
    BOOL bEnable=TRUE,
    int nMin=0,
    int nMax=0);

Paramètres

bEnable
[in] TRUE pour activer le contrôle de bouton de rotation ; FALSE pour désactiver le contrôle de bouton de rotation. La valeur par défaut est TRUE.

nMin
[in] Valeur minimale du contrôle de bouton spin. La valeur par défaut est 0.

nMax
[in] Valeur maximale du contrôle de bouton de rotation. La valeur par défaut est 0.

Notes

L’infrastructure crée automatiquement un contrôle de bouton spin lorsqu’une propriété est sur le point d’être modifiée.

Le type de propriété, spécifié par le varValue paramètre du CMFCPropertyGridProperty::CMFCPropertyGridProperty constructeur, doit être un type variant pris en charge. Sinon, cette méthode s’affirme en mode débogage. Les types pris en charge incluent VT_INT, , VT_UINTVT_I4VT_I2, , VT_UI2, et .VT_UI4

CMFCPropertyGridProperty::Expand

Développe ou réduit une propriété qui contient des sous-propriétés.

void Expand(BOOL bExpand=TRUE);

Paramètres

bExpand
[in] TRUE pour développer la propriété ; FALSE pour réduire la propriété. La valeur par défaut est TRUE.

CMFCPropertyGridProperty::FormatProperty

Met en forme la représentation textuelle d'une valeur de propriété.

virtual CString FormatProperty();

Valeur de retour

Représentation textuelle de la valeur de propriété.

Notes

Cette méthode est appelée par l’infrastructure avant l’affichage de la valeur de propriété.

CMFCPropertyGridProperty::GetData

Récupère une DWORD valeur associée à une propriété.

DWORD_PTR GetData() const;

Valeur de retour

Une valeurDWORD.

Notes

Les données retournées sont une valeur spécifique à l’application, telle qu’un nombre ou un pointeur vers d’autres données. Spécifiez la valeur de données lorsque vous construisez la propriété ou lorsque vous appelez la CMFCPropertyGridProperty::SetData méthode.

CMFCPropertyGridProperty::GetDescription

Récupère une description de propriété.

const CString& GetDescription() const;

Valeur de retour

Chaîne de texte qui contient la description de la propriété.

Notes

Le contrôle de liste de propriétés utilise également cette méthode pour afficher la description de la propriété.

CMFCPropertyGridProperty::GetExpandedSubItems

Récupère le nombre de sous-éléments développés.

int GetExpandedSubItems(BOOL bIncludeHidden=TRUE) const;

Paramètres

bIncludeHidden
[in] TRUE pour inclure les sous-éléments masqués dans le nombre ; sinon, FALSE. La valeur par défaut est TRUE.

Valeur de retour

Nombre de sous-éléments développés.

CMFCPropertyGridProperty::GetHierarchyLevel

Récupère l’index de base zéro du niveau de hiérarchie de la propriété.

int GetHierarchyLevel() const;

Valeur de retour

Niveau hiérarchique de la propriété.

CMFCPropertyGridProperty::GetName

Récupère le nom de la propriété.

LPCTSTR GetName() const;

Valeur de retour

Pointeur vers une chaîne qui contient le nom de la propriété.

CMFCPropertyGridProperty::GetNameTooltip

Appelé par l’infrastructure pour afficher le nom de la propriété dans une info-bulle.

virtual CString GetNameTooltip();

Valeur de retour

Chaîne qui contient le nom de la propriété. Par défaut, la valeur de retour est la chaîne vide.

CMFCPropertyGridProperty::GetOption

Récupère le texte de l’option spécifiée par un index.

LPCTSTR GetOption(int nIndex) const;

Paramètres

nIndex
Index de base zéro de l’élément de liste de propriétés (option) à récupérer.

Valeur de retour

Pointeur vers une chaîne qui contient le texte de l’option.

CMFCPropertyGridProperty::GetOptionCount

Récupère le nombre d’options qui appartiennent à une propriété.

int GetOptionCount() const;

Valeur de retour

Nombre d’éléments de liste de propriétés (options) contenus dans le contrôle de propriété.

Notes

Appelez la CMFCPropertyGridProperty::AddOption méthode pour ajouter des éléments à la liste des propriétés. Appelez la CMFCPropertyGridProperty::RemoveAllOptions méthode pour supprimer tous les éléments.

CMFCPropertyGridProperty::GetOriginalValue

Récupère la valeur initiale de la propriété actuelle.

const COleVariant& GetOriginalValue() const;

Valeur de retour

Valeur d’origine de la propriété actuelle.

Notes

Utilisez cette méthode pour annuler l’effet d’une opération de modification qui modifie la valeur de la propriété actuelle.

La valeur d’origine de la propriété actuelle est définie par le CMFCPropertyGridProperty::CMFCPropertyGridProperty constructeur, modifiée par la CMFCPropertyGridProperty::SetOriginalValue méthode et réinitialisée par la CMFCPropertyGridProperty::ResetOriginalValue méthode.

CMFCPropertyGridProperty::GetParent

Récupère un pointeur vers une propriété parente.

CMFCPropertyGridProperty* GetParent() const;

Valeur de retour

Pointeur vers un objet de propriété parent ou NULL pour la propriété de niveau supérieur.

CMFCPropertyGridProperty::GetRect

Récupère le rectangle englobant d’une propriété.

CRect GetRect() const;

Valeur de retour

Objet CRect qui décrit le rectangle englobant.

CMFCPropertyGridProperty::GetSubItem

Récupère une sous-propriété identifiée par un index de base zéro.

CMFCPropertyGridProperty* GetSubItem(int nIndex) const;

Paramètres

nIndex
[in] Index de base zéro de la propriété à récupérer. Ce paramètre n’est pas valide s’il est inférieur à zéro ou supérieur ou égal au nombre de sous-propriétés.

Valeur de retour

Pointeur vers un objet de propriété qui est un élément enfant de cette propriété.

-ou-

En mode vente au détail, NULL si le nIndex paramètre n’est pas valide. En mode débogage, cette méthode affirme.

CMFCPropertyGridProperty::GetSubItemsCount

Récupère le nombre de sous-éléments.

int GetSubItemsCount() const;

Valeur de retour

Nombre d’éléments enfants.

CMFCPropertyGridProperty::GetValue

Récupère une valeur de propriété.

virtual const _variant_t& GetValue() const;

Valeur de retour

Variante qui contient la valeur de propriété.

CMFCPropertyGridProperty::GetValueTooltip

Appelé par l’infrastructure pour récupérer la représentation textuelle de la valeur de propriété qui est ensuite affichée dans une info-bulle.

virtual CString GetValueTooltip();

Valeur de retour

Objet CString contenant la représentation textuelle de la valeur de propriété. Par défaut, cette valeur est la chaîne vide.

CMFCPropertyGridProperty::HasButton

Indique si une propriété contient un bouton.

virtual BOOL HasButton() const;

Valeur de retour

TRUE si une propriété contient un bouton (ou une liste de propriétés) ; sinon, FALSE.

CMFCPropertyGridProperty::HitTest

Pointe vers l’objet de propriété qui correspond à l’élément de liste de propriétés qui correspond à un point.

CMFCPropertyGridProperty* HitTest(
    CPoint point,
    CMFCPropertyGridProperty::ClickArea* pnArea=NULL);

CMFCPropertyGridProperty* HitTest(
    CPoint pt,
    CMFCPropertyGridProperty::ClickArea* pnArea=NULL,
    BOOL bPropsOnly=FALSE) const;

Paramètres

point
[in] Point à tester, dans les coordonnées du client. Ce paramètre est généralement l’emplacement actuel du pointeur de la souris.

pt
[in] Point à tester, dans les coordonnées du client.

pnArea
[out] Lorsque cette méthode est retournée, indique la zone qui contient le point spécifié. Pour plus d'informations, consultez la section Notes. La valeur par défaut est NULL.

bPropsOnly
[in] TRUE pour tester n’importe quelle zone dans le contrôle de propriété ; FALSE pour tester uniquement la zone de description. La valeur par défaut est FALSE.

Valeur de retour

Pointeur vers un objet de propriété ou NULL.

Notes

Par défaut, cette méthode teste les sous-éléments de propriété si le point spécifié n’est trouvé dans aucun des éléments de propriété.

Le tableau suivant répertorie les valeurs qui peuvent être retournées au pnArea paramètre.

Zone Description
ClickArea::ClickExpandBox Contrôle de zone de développement, désigné par un signe plus (+).
ClickArea::ClickName Nom de propriété.
ClickArea::ClickValue Valeur de la propriété.

CMFCPropertyGridProperty::Init

Appelé par l’infrastructure pour initialiser un objet de propriété.

void Init();

CMFCPropertyGridProperty::IsAllowEdit

Indique si une propriété est modifiable.

BOOL IsAllowEdit() const;

Valeur de retour

TRUE si la propriété est modifiable ; sinon FALSE.

CMFCPropertyGridProperty::IsEnabled

Indique si une propriété est activée ou désactivée.

BOOL IsEnabled() const;

Valeur de retour

TRUE si la propriété est activée ; FALSE si la propriété est désactivée.

Notes

Indique si une propriété est activée ou désactivée.

CMFCPropertyGridProperty::IsExpanded

Indique si une propriété est développée ou réduite.

BOOL IsExpanded() const;

Valeur de retour

TRUE si la propriété est développée ; FALSE si la propriété est réduite.

CMFCPropertyGridProperty::IsGroup

Indique si la propriété actuelle représente un groupe.

BOOL IsGroup() const;

Valeur de retour

TRUE si l’objet de propriété actuel représente un groupe ; FALSE si la propriété représente une valeur.

Notes

Un groupe est une collection de propriétés associées dans un contrôle de grille de propriétés. Si le contrôle est affiché hiérarchiquement, le nom du groupe s’affiche sous la forme d’un titre de catégorie dans la ligne au-dessus du groupe.

CMFCPropertyGridProperty::IsInPlaceEditing

Indique si la propriété actuelle est modifiable.

BOOL IsInPlaceEditing() const;

Valeur de retour

TRUE si la propriété actuelle est modifiable ; sinon, FALSE.

CMFCPropertyGridProperty::IsModified

Indique si la propriété actuelle est modifiée.

BOOL IsModified() const;

Valeur de retour

TRUE si la propriété est modifiée ; sinon, FALSE.

CMFCPropertyGridProperty::IsParentExpanded

Indique si les parents de la propriété actuelle sont développés.

BOOL IsParentExpanded() const;

Valeur de retour

TRUE si tous les parents de la propriété actuelle sont développés ; FALSE si les propriétés parentes sont réduites.

CMFCPropertyGridProperty::IsSelected

Indique si la propriété actuelle est sélectionnée.

virtual BOOL IsSelected() const;

Valeur de retour

TRUE si la propriété actuelle est sélectionnée ; sinon, FALSE.

CMFCPropertyGridProperty::IsSubItem

Indique si la propriété spécifiée est un sous-élément de la propriété actuelle.

BOOL IsSubItem(CMFCPropertyGridProperty* pProp) const;

Paramètres

pProp
[in] Pointeur vers une propriété.

Valeur de retour

TRUE si la propriété spécifiée est un sous-élément de la propriété actuelle ; sinon, FALSE.

CMFCPropertyGridProperty::IsValueChanged

Indique si la valeur de la propriété actuelle a changé.

virtual BOOL IsValueChanged() const;

Valeur de retour

TRUE si la valeur de la propriété actuelle a changé ; sinon, FALSE.

CMFCPropertyGridProperty::IsVisible

Indique si la propriété actuelle est visible.

BOOL IsVisible() const;

Valeur de retour

TRUE si la propriété actuelle est visible ; Sinon; FALSE.

CMFCPropertyGridProperty::m_strFormatDouble

Contient une chaîne de format pour une valeur de type double.

static CString m_strFormatDouble;

CMFCPropertyGridProperty::m_strFormatFloat

Contient une chaîne de format pour une valeur de type float.

static CString m_strFormatFloat;

CMFCPropertyGridProperty::m_strFormatLong

Contient une chaîne de format pour une valeur de type long.

static CString m_strFormatLong;

CMFCPropertyGridProperty::m_strFormatShort

Contient une chaîne de format pour une valeur de type court.

static CString m_strFormatShort;

CMFCPropertyGridProperty::OnClickButton

Appelé par l’infrastructure lorsque l’utilisateur sélectionne un bouton contenu dans une propriété.

virtual void OnClickButton(CPoint point);

Paramètres

point
[in] Point, dans les coordonnées du client.

Notes

Par défaut, cette méthode ne fait rien.

CMFCPropertyGridProperty::OnClickName

Appelé par un contrôle de liste de propriétés parent quand un utilisateur sélectionne le champ nom d’une propriété.

virtual void OnClickName(CPoint C);

Paramètres

C
[in] Point, dans les coordonnées du client.

Notes

Par défaut, cette méthode ne fait rien.

CMFCPropertyGridProperty::OnClickValue

Appelé par un contrôle de liste de propriétés parent quand un utilisateur sélectionne le champ valeur d’une propriété.

virtual BOOL OnClickValue(
    UINT uiMsg,
    CPoint point);

Paramètres

uiMsg
[in] Message de souris.

point
[in] Point, dans les coordonnées du client.

Valeur de retour

TRUE si le message de souris spécifié est traité par cette méthode ; sinon, FALSE.

Notes

Par défaut, cette méthode retourne FALSE si la propriété actuelle n’est pas modifiable. Sinon, le contrôle de modification ou de rotation associé à cette propriété traite le message de la souris spécifié, puis cette méthode retourne TRUE.

CMFCPropertyGridProperty::OnCloseCombo

Appelé par l’infrastructure lorsqu’une zone de liste modifiable contenue dans une propriété est fermée.

virtual void OnCloseCombo();

CMFCPropertyGridProperty::OnCtlColor

Appelé par l’infrastructure lorsqu’il doit récupérer un pinceau pour remplir la couleur d’arrière-plan d’une propriété.

virtual HBRUSH OnCtlColor(
    CDC* pDC,
    UINT nCtlColor);

Paramètres

pDC
[in] Pointeur vers un contexte d’appareil.

nCtlColor
[in] (Ce paramètre n’est pas utilisé.)

Valeur de retour

Handle vers un pinceau si cette méthode réussit ; sinon, NULL.

CMFCPropertyGridProperty::OnDblClk

Appelé par l’infrastructure lorsque l’utilisateur double-clique sur une propriété.

virtual BOOL OnDblClk(CPoint point);

Paramètres

point
[in] Point, dans les coordonnées du client.

Valeur de retour

TRUE si cette méthode réussit ; sinon, FALSE.

Notes

Par défaut, cette méthode sélectionne l’élément de propriété suivant dans le contrôle de liste de propriétés.

CMFCPropertyGridProperty::OnDestroyWindow

Appelé par l’infrastructure lorsqu’une propriété est détruite ou lorsque la modification est terminée.

virtual void OnDestroyWindow();

CMFCPropertyGridProperty::OnDrawButton

Appelé par l’infrastructure pour dessiner un bouton contenu dans une propriété.

virtual void OnDrawButton(
    CDC* pDC,
    CRect rectButton);

Paramètres

pDC
[in] Pointeur vers un contexte d’appareil.

rectButton
[in] Rectangle englobant qui spécifie où dessiner un bouton.

CMFCPropertyGridProperty::OnDrawDescription

Appelé par l’infrastructure pour dessiner la description de la propriété.

virtual void OnDrawDescription(
    CDC* pDC,
    CRect rect);

Paramètres

pDC
[in] Pointeur vers un contexte d’appareil.

rect
[in] Rectangle englobant qui spécifie où dessiner la description de la propriété.

Notes

Par défaut, cette méthode dessine le nom et la description de la propriété dans la police utilisée par le contrôle de liste de propriétés parent. La description de la propriété est dessinée dans un style normal et le nom de la propriété est dessiné en gras.

CMFCPropertyGridProperty::OnDrawExpandBox

Appelé par l’infrastructure pour dessiner un contrôle de zone de développement près d’une propriété qui contient des sous-propriétés.

virtual void OnDrawExpandBox(
    CDC* pDC,
    CRect rectExpand);

Paramètres

pDC
[in] Pointeur vers un contexte d’appareil.

rectExpand
[in] Rectangle englobant qui spécifie où dessiner le contrôle de zone de développement.

Notes

Sélectionnez le contrôle de zone de développement pour développer ou réduire une liste de sous-propriétés. Le contrôle de zone de développement est désigné par un carré qui contient un signe plus (+) ou moins (-). Un signe plus indique que la propriété peut être développée pour afficher une liste de sous-propriétés. Un signe moins indique que la liste peut être réduite pour afficher uniquement la propriété.

CMFCPropertyGridProperty::OnDrawName

Appelé par l’infrastructure pour afficher le nom de la propriété.

virtual void OnDrawName(
    CDC* pDC,
    CRect rect);

Paramètres

pDC
[in] Pointeur vers un contexte d’appareil.

rect
[in] Rectangle englobant qui spécifie où dessiner le nom de la propriété.

CMFCPropertyGridProperty::OnDrawValue

Appelé par l'infrastructure pour afficher la valeur de propriété.

virtual void OnDrawValue(
    CDC* pDC,
    CRect rect);

Paramètres

pDC
[in] Pointeur vers un contexte d’appareil.

rect
[in] Rectangle englobant qui spécifie où dessiner la valeur de la propriété.

CMFCPropertyGridProperty::OnEdit

Appelé par l'infrastructure quand l'utilisateur s'apprête à modifier une valeur de propriété.

virtual BOOL OnEdit(LPPOINT lptClick);

Paramètres

lptClick
[in] (Ce paramètre n’est pas utilisé.) Pointeur vers un point, dans les coordonnées du client.

Valeur de retour

TRUE si l’opération de modification démarre correctement ; sinon, FALSE.

Notes

Cette fonction est appelée par l’infrastructure lorsque l’utilisateur est sur le point de modifier une valeur de propriété. Par défaut, cette méthode démarre l’éditeur approprié pour un contrôle de zone de liste modifiable ou un contrôle spin.

CMFCPropertyGridProperty::OnEndEdit

Appelé par l’infrastructure lorsque l’utilisateur a terminé de modifier une valeur de propriété.

virtual BOOL OnEndEdit();

Valeur de retour

Cette méthode retourne toujours TRUE.

Notes

Par défaut, cette méthode détruit le contrôle d’édition actuel, puis retourne TRUE.

CMFCPropertyGridProperty::OnKillFocus

Appelé par l’infrastructure lorsque la propriété perd le focus d’entrée.

virtual BOOL OnKillFocus(CWnd*);

Paramètres

CWnd
[in] (Non utilisé.) Pointeur vers une fenêtre.

Valeur de retour

Cette méthode retourne toujours TRUE.

Notes

Par défaut, cette méthode ne fait rien, puis retourne TRUE. Si vous remplacez cette méthode, retournez TRUE si l’infrastructure peut mettre fin à l’opération de modification lorsque la propriété perd le focus d’entrée.

CMFCPropertyGridProperty::OnKillSelection

virtual void OnKillSelection(CMFCPropertyGridProperty*);

Paramètres

[in] CMFCPropertyGridProperty*\

Notes

Par défaut, cette méthode ne fait rien.

CMFCPropertyGridProperty::OnPosSizeChanged

virtual void OnPosSizeChanged(CRect);

Paramètres

[in] CRect\

Notes

Par défaut, cette méthode ne fait rien.

CMFCPropertyGridProperty::OnRClickName

Appelé par l’infrastructure lorsque l’utilisateur sélectionne le bouton droit de la souris dans la zone de nom de propriété.

virtual void OnRClickName(CPoint C);

Paramètres

C
[in] Point, dans les coordonnées du client.

Notes

Par défaut, cette méthode ne fait rien.

CMFCPropertyGridProperty::OnRClickValue

Appelé par l’infrastructure lorsque l’utilisateur sélectionne le bouton droit de la souris dans la zone de valeur de propriété.

virtual void OnRClickValue(
    CPoint C,
    BOOL B);

Paramètres

C
[in] Point, dans les coordonnées du client.

B
[in] A Boolean.

Notes

Par défaut, cette méthode ne fait rien et le B paramètre n’a pas d’objectif prédéfini.

CMFCPropertyGridProperty::OnSelectCombo

Appelé par l’infrastructure lorsque l’utilisateur sélectionne un élément dans la zone de liste modifiable.

virtual void OnSelectCombo();

Notes

Par défaut, cette méthode utilise le texte de l’élément sélectionné pour mettre à jour la valeur de propriété.

CMFCPropertyGridProperty::OnSetCursor

Appelé par l’infrastructure lorsque le pointeur de la souris se déplace vers un élément de propriété.

virtual BOOL OnSetCursor() const;

Valeur de retour

TRUE si la propriété actuelle est un type de variante ou une liste de valeurs, et que cette méthode charge correctement le curseur de la souris point d’insertion (faisceau I) ; sinon, FALSE.

Notes

Cette méthode prend en charge les types de variantes suivants : VT_INT, VT_UI2VT_UINTVT_I4VT_UI1VT_I2, VT_UI4, VT_R4VT_R8et .VT_BSTR

CMFCPropertyGridProperty::OnSetSelection

virtual void OnSetSelection CMFCPropertyGridProperty*);

Paramètres

[in] CMFCPropertyGridProperty*\

Notes

Par défaut, cette méthode ne fait rien.

CMFCPropertyGridProperty::OnUpdateValue

Appelé par l'infrastructure quand la valeur d'une propriété modifiable a changé.

virtual BOOL OnUpdateValue();

Valeur de retour

TRUE si cette méthode réussit ; sinon, FALSE.

CMFCPropertyGridProperty::PushChar

Appelé à partir du contrôle de liste de propriétés lorsque la propriété est sélectionnée et que l’utilisateur entre un nouveau caractère.

virtual BOOL PushChar(UINT nChar);

Paramètres

nChar
[in] Caractère.

Valeur de retour

TRUE si l’opération de modification se poursuit ; sinon, FALSE.

Notes

Cette méthode prend en charge une propriété qui est une liste de valeurs ou l’un des types de variantes suivants : VT_INT, , VT_I4VT_I2, VT_UINT, , VT_UI1, , VT_UI2VT_UI4, , VT_R4, VT_R8, et VT_BSTR.

CMFCPropertyGridProperty::Redraw

Redessine la propriété.

void Redraw();

CMFCPropertyGridProperty::RemoveAllOptions

Supprime toutes les options (éléments) d’une propriété.

void RemoveAllOptions();

Notes

Les options sont également appelées éléments de liste d’un contrôle de liste de propriétés.

CMFCPropertyGridProperty::RemoveSubItem

Supprime le sous-élément spécifié.

BOOL RemoveSubItem(
    CMFCPropertyGridProperty*& pProp,
    BOOL bDelete=TRUE);

Paramètres

pProp
[in] Pointeur vers un sous-élément de propriété.

bDelete
[in] TRUE pour supprimer l’objet de propriété spécifié par le pProp paramètre ; sinon, FALSE. La valeur par défaut est TRUE.

Valeur de retour

Notes

Spécifiez le bDelete paramètre si vous envisagez de déplacer le sous-élément spécifié ; autrement dit, supprimez FALSE le sous-élément, puis ajoutez-le ailleurs.

CMFCPropertyGridProperty::ResetOriginalValue

Restaure la valeur d’origine d’une propriété modifiée.

virtual void ResetOriginalValue();

CMFCPropertyGridProperty::SetData

Associe une DWORD valeur à une propriété.

void SetData(DWORD_PTR dwData);

Paramètres

dwData
[in] Valeur 32 bits spécifique à l’application, telle qu’un entier ou un pointeur vers d’autres données.

Notes

Utilisez la CMFCPropertyGridProperty::GetData méthode pour récupérer la DWORD valeur. Utilisez la CMFCPropertyGridCtrl::FindItemByData méthode pour localiser l’élément de liste de propriétés associé à la valeur spécifiée DWORD .

CMFCPropertyGridProperty::SetDescription

Spécifie le texte qui décrit la propriété actuelle.

void SetDescription(const CString& strDescr);

Paramètres

strDescr
[in] Texte qui décrit la propriété actuelle.

CMFCPropertyGridProperty::SetName

Définit le nom d’une propriété.

void SetName(
    LPCTSTR lpszName,
    BOOL bRedraw=TRUE);

Paramètres

lpszName
[in] Nom de la propriété.

bRedraw
[in] TRUE pour redessiner immédiatement la propriété ; sinon, FALSE. La valeur par défaut est TRUE.

CMFCPropertyGridProperty::SetOriginalValue

Définit la valeur d'origine d'une propriété modifiable.

virtual void SetOriginalValue(const COleVariant& varValue);

Paramètres

varValue
[in] Valeur.

Notes

Utilisez la CMFCPropertyGridProperty::ResetOriginalValue méthode pour réinitialiser la valeur d’origine d’une propriété modifiée.

CMFCPropertyGridProperty::SetValue

Définit la valeur d’une propriété de grille de propriétés.

virtual void SetValue(const _variant_t& varValue);

Paramètres

varValue
[in] Référence à la valeur à laquelle définir la propriété.

Exemple : SetValue

void SetPropBarValue(UINT propId, const DWORD& barPropDwordValue)
{
  auto property = propertiesGridCtrlList.FindItemByData(propId);
  if (property != nullptr)
  {
    property->SetValue(static_cast<_variant_t >(barPropDwordValue == 1)); // set value to true or false depending on dword value
  }
}

CMFCPropertyGridProperty::Show

Affiche ou masque une propriété.

void Show(
    BOOL bShow=TRUE,
    BOOL bAdjustLayout=TRUE);

Paramètres

bShow
[in] TRUE pour afficher la propriété actuelle et ses sous-éléments ; FALSE pour masquer la propriété actuelle et ses sous-éléments. La valeur par défaut est TRUE.

bAdjustLayout
[in] TRUE pour recalculer comment dessiner l’étiquette et la valeur d’une propriété, puis dessiner la propriété ; FALSE pour utiliser des calculs existants pour dessiner la propriété. La valeur par défaut est TRUE.

Voir aussi

Graphique hiérarchique
Classes
CMFCPropertyGridCtrl, classe