Partager via


COlePropertyPage, classe

Utilisée pour afficher les propriétés d'un contrôle personnalisé dans une interface graphique, similaire à une boîte de dialogue.

Syntaxe

class AFX_NOVTABLE COlePropertyPage : public CDialog

Membres

Constructeurs publics

Nom Description
COlePropertyPage ::COlePropertyPage Construit un objet COlePropertyPage.

Méthodes publiques

Nom Description
COlePropertyPage ::GetControlStatus Indique si l’utilisateur a modifié la valeur dans le contrôle.
COlePropertyPage ::GetObjectArray Retourne le tableau d’objets en cours de modification par la page de propriétés.
COlePropertyPage ::GetPageSite Retourne un pointeur vers l’interface de la page de IPropertyPageSite propriétés.
COlePropertyPage ::IgnoreApply Détermine les contrôles qui n’activent pas le bouton Appliquer.
COlePropertyPage ::IsModified Indique si l’utilisateur a modifié la page de propriétés.
COlePropertyPage ::OnEditProperty Appelé par l’infrastructure lorsque l’utilisateur modifie une propriété.
COlePropertyPage ::OnHelp Appelé par l’infrastructure lorsque l’utilisateur appelle de l’aide.
COlePropertyPage ::OnInitDialog Appelé par l’infrastructure lorsque la page de propriétés est initialisée.
COlePropertyPage ::OnObjectsChanged Appelé par l’infrastructure quand un autre contrôle OLE, avec de nouvelles propriétés, est choisi.
COlePropertyPage ::OnSetPageSite Appelé par l’infrastructure lorsque le cadre de propriété fournit le site de la page.
COlePropertyPage ::SetControlStatus Définit un indicateur indiquant si l’utilisateur a modifié la valeur dans le contrôle.
COlePropertyPage ::SetDialogResource Définit la ressource de boîte de dialogue de la page de propriétés.
COlePropertyPage ::SetHelpInfo Définit le texte d’aide bref de la page de propriétés, le nom de son fichier d’aide et son contexte d’aide.
COlePropertyPage ::SetModifiedFlag Définit un indicateur indiquant si l’utilisateur a modifié la page de propriétés.
COlePropertyPage ::SetPageName Définit le nom de la page de propriétés (légende).

Notes

Par exemple, une page de propriétés peut inclure un contrôle d’édition qui permet à l’utilisateur d’afficher et de modifier la propriété de légende du contrôle.

Chaque propriété de contrôle personnalisé ou de contrôle stock peut avoir un contrôle de boîte de dialogue qui permet à l’utilisateur du contrôle d’afficher la valeur de propriété actuelle et de modifier cette valeur si nécessaire.

Pour plus d’informations sur l’utilisation COlePropertyPage, consultez l’article Contrôles ActiveX : Pages de propriétés.

Hiérarchie d'héritage

CObject

CCmdTarget

CWnd

CDialog

COlePropertyPage

Spécifications

En-tête : afxctl.h

COlePropertyPage ::COlePropertyPage

Construit un objet COlePropertyPage.

COlePropertyPage(
    UINT idDlg,
    UINT idCaption);

Paramètres

idDlg
ID de ressource du modèle de boîte de dialogue.

idCaption
ID de ressource de la légende de la page de propriétés.

Notes

Lorsque vous implémentez une sous-classe de COlePropertyPage, le constructeur de votre sous-classe doit utiliser le COlePropertyPage constructeur pour identifier la ressource de modèle de dialogue sur laquelle la page de propriétés est basée et la ressource de chaîne contenant sa légende.

COlePropertyPage ::GetControlStatus

Détermine si l’utilisateur a modifié la valeur du contrôle de page de propriétés avec l’ID de ressource spécifié.

BOOL GetControlStatus(UINT nID);

Paramètres

nID
ID de ressource d’un contrôle de page de propriétés.

Valeur de retour

TRUE si la valeur du contrôle a été modifiée ; sinon FALSE.

COlePropertyPage ::GetObjectArray

Retourne le tableau d’objets en cours de modification par la page de propriétés.

LPDISPATCH* GetObjectArray(ULONG* pnObjects);

Paramètres

pnObjects
Pointeur vers un entier long non signé qui recevra le nombre d’objets modifiés par la page.

Valeur de retour

Pointeur vers un tableau de IDispatch pointeurs, qui sont utilisés pour accéder aux propriétés de chaque contrôle sur la page de propriétés. L’appelant ne doit pas libérer ces pointeurs d’interface.

Notes

Chaque objet de page de propriétés gère un tableau de pointeurs vers les IDispatch interfaces des objets en cours de modification par la page. Cette fonction définit son argument pnObjects sur le nombre d’éléments de ce tableau et retourne un pointeur vers le premier élément du tableau.

COlePropertyPage ::GetPageSite

Obtient un pointeur vers l’interface de la page de IPropertyPageSite propriétés.

LPPROPERTYPAGESITE GetPageSite();

Valeur de retour

Pointeur vers l’interface de la page de IPropertyPageSite propriétés.

Notes

Les contrôles et les conteneurs collaborent afin que les utilisateurs puissent parcourir et modifier les propriétés de contrôle. Le contrôle fournit des pages de propriétés, chacune d’elles étant un objet OLE qui permet à l’utilisateur de modifier un ensemble de propriétés associé. Le conteneur fournit un cadre de propriété qui affiche les pages de propriétés. Pour chaque page, le cadre de propriété fournit un site de page, qui prend en charge l’interface IPropertyPageSite .

COlePropertyPage ::IgnoreApply

Détermine les contrôles qui n’activent pas le bouton Appliquer.

void IgnoreApply(UINT nID);

Paramètres

nID
ID du contrôle à ignorer.

Notes

Le bouton Appliquer de la page de propriétés est activé uniquement lorsque les valeurs des contrôles de page de propriétés ont été modifiées. Utilisez cette fonction pour spécifier les contrôles qui n’entraînent pas l’activation du bouton Appliquer lorsque leurs valeurs changent.

COlePropertyPage ::IsModified

Détermine si l’utilisateur a modifié les valeurs de la page de propriétés.

BOOL IsModified();

Valeur de retour

TRUE si la page de propriétés a été modifiée.

COlePropertyPage ::OnEditProperty

L’infrastructure appelle cette fonction lorsqu’une propriété spécifique doit être modifiée.

virtual BOOL OnEditProperty(DISPID dispid);

Paramètres

dispid
ID de répartition de la propriété en cours de modification.

Valeur de retour

L’implémentation par défaut retourne FALSE. Les remplacements de cette fonction doivent retourner TRUE.

Notes

Vous pouvez le remplacer pour définir le focus sur le contrôle approprié sur la page. L’implémentation par défaut ne fait rien et retourne FALSE.

COlePropertyPage ::OnHelp

L’infrastructure appelle cette fonction lorsque l’utilisateur demande de l’aide en ligne.

virtual BOOL OnHelp(LPCTSTR lpszHelpDir);

Paramètres

lpszHelpDir
Répertoire contenant le fichier d’aide de la page de propriétés.

Valeur de retour

L’implémentation par défaut retourne FALSE.

Notes

Remplacez-la si votre page de propriétés doit effectuer une action spéciale lorsque l’utilisateur accède à l’aide. L’implémentation par défaut ne fait rien et retourne FALSE, ce qui indique au framework d’appeler WinHelp.

COlePropertyPage ::OnInitDialog

L’infrastructure appelle cette fonction lorsque la boîte de dialogue de la page de propriétés est initialisée.

virtual BOOL OnInitDialog();

Valeur de retour

L’implémentation par défaut retourne FALSE.

Notes

Remplacez-la si une action spéciale est requise lorsque la boîte de dialogue est initialisée. Les appels CDialog::OnInitDialog d’implémentation par défaut et retourne FALSE.

COlePropertyPage ::OnObjectsChanged

Appelé par l’infrastructure quand un autre contrôle OLE, avec de nouvelles propriétés, est choisi.

virtual void OnObjectsChanged();

Notes

Lorsque vous affichez les propriétés d’un contrôle OLE dans l’environnement développeur, une boîte de dialogue sans mode est utilisée pour afficher ses pages de propriétés. Si un autre contrôle est sélectionné, un autre ensemble de pages de propriétés doit être affiché pour le nouvel ensemble de propriétés. L’infrastructure appelle cette fonction pour notifier la page de propriétés de la modification.

Remplacez cette fonction pour recevoir la notification de cette action et effectuer toutes les actions spéciales.

COlePropertyPage ::OnSetPageSite

L’infrastructure appelle cette fonction lorsque le cadre de propriété fournit le site de page de la page de propriétés.

virtual void OnSetPageSite();

Notes

L’implémentation par défaut charge la légende de la page et tente de déterminer la taille de la page à partir de la ressource de boîte de dialogue. Remplacez cette fonction si votre page de propriétés nécessite une action supplémentaire ; votre remplacement doit appeler l’implémentation de classe de base.

COlePropertyPage ::SetControlStatus

Modifie l’état d’un contrôle de page de propriétés.

BOOL SetControlStatus(
    UINT nID,
    BOOL bDirty);

Paramètres

nID
Contient l’ID d’un contrôle de page de propriétés.

bDirty
Spécifie si un champ de la page de propriétés a été modifié. Définissez la valeur TRUE si le champ a été modifié, FALSE s’il n’a pas été modifié.

Valeur de retour

TRUE, si le contrôle spécifié a été défini ; sinon FALSE.

Notes

Si l’état d’un contrôle de page de propriétés est incorrect lorsque la page de propriétés est fermée ou que le bouton Appliquer est choisi, la propriété du contrôle est mise à jour avec la valeur appropriée.

COlePropertyPage ::SetDialogResource

Définit la ressource de boîte de dialogue de la page de propriétés.

void SetDialogResource(HGLOBAL hDialog);

Paramètres

hDialog
Gérez la ressource de boîte de dialogue de la page de propriétés.

COlePropertyPage ::SetHelpInfo

Spécifie les informations d’info-bulle, le nom de fichier d’aide et le contexte d’aide de votre page de propriétés.

void SetHelpInfo(
    LPCTSTR lpszDocString,
    LPCTSTR lpszHelpFile = NULL,
    DWORD dwHelpContext = 0);

Paramètres

lpszDocString
Chaîne contenant de brèves informations d’aide pour l’affichage dans une barre d’état ou un autre emplacement.

lpszHelpFile
Nom du fichier d’aide de la page de propriétés.

dwHelpContext
Contexte d’aide pour la page de propriétés.

COlePropertyPage ::SetModifiedFlag

Indique si l’utilisateur a modifié la page de propriétés.

void SetModifiedFlag(BOOL bModified = TRUE);

Paramètres

bModified
Spécifie la nouvelle valeur de l’indicateur modifié de la page de propriétés.

COlePropertyPage ::SetPageName

Définit le nom de la page de propriétés, que le cadre de propriété affiche généralement sous l’onglet de la page.

void SetPageName(LPCTSTR lpszPageName);

Paramètres

lpszPageName
Pointeur vers une chaîne contenant le nom de la page de propriétés.

Voir aussi

Exemple CIRC3 MFC
Exemple TESTHELP MFC
CDialog, classe
Graphique hiérarchique
CDialog, classe