CWndClassInfo, classe
Cette classe fournit des méthodes pour inscrire des informations pour une classe de fenêtre.
Important
Cette classe et ses membres ne peuvent pas être utilisés dans les applications qui s’exécutent dans Windows Runtime.
Syntaxe
class CWndClassInfo
Membres
Méthodes publiques
Nom | Description |
---|---|
S’inscrire | Inscrit la classe de fenêtre. |
Données membres
Nom | Description |
---|---|
m_atom | Identifie de façon unique la classe de fenêtre inscrite. |
m_bSystemCursor | Spécifie si la ressource de curseur fait référence à un curseur système ou à un curseur contenu dans une ressource de module. |
m_lpszCursorID | Spécifie le nom de la ressource de curseur. |
m_lpszOrigName | Contient le nom d’une classe de fenêtre existante. |
m_szAutoName | Contient un nom généré par ATL de la classe de fenêtre. |
m_wc | Gère les informations de classe de fenêtre dans une WNDCLASSEX structure. |
pWndProc | Pointe vers la procédure de fenêtre d’une classe de fenêtre existante. |
Notes
CWndClassInfo
gère les informations d’une classe de fenêtre. Vous utilisez CWndClassInfo
généralement l’une des trois macros, DECLARE_WND_CLASS, DECLARE_WND_CLASS_EX ou DECLARE_WND_SUPERCLASS, comme décrit dans le tableau suivant :
Macro | Description |
---|---|
DECLARE_WND_CLASS | CWndClassInfo inscrit des informations pour une nouvelle classe de fenêtre. |
DECLARE_WND_CLASS_EX | CWndClassInfo inscrit des informations pour une nouvelle classe de fenêtre, y compris les paramètres de classe. |
DECLARE_WND_SUPERCLASS | CWndClassInfo inscrit des informations pour une classe de fenêtre basée sur une classe existante, mais utilise une procédure de fenêtre différente. Cette technique est appelée superclassement. |
Par défaut, CWindowImpl inclut la DECLARE_WND_CLASS
macro pour créer une fenêtre basée sur une nouvelle classe de fenêtre. DECLARE_WND_CLASS fournit des styles et des couleurs d’arrière-plan par défaut pour le contrôle. Si vous souhaitez spécifier vous-même le style et la couleur d’arrière-plan, dérivez votre classe CWindowImpl
et incluez la macro DECLARE_WND_CLASS_EX dans votre définition de classe.
Si vous souhaitez créer une fenêtre basée sur une classe de fenêtre existante, dérivez votre classe CWindowImpl
et incluez la macro DECLARE_WND_SUPERCLASS dans votre définition de classe. Par exemple :
class ATL_NO_VTABLE CMyWindow :
OtherInheritedClasses
public CComControl<CMyWindow>
// CComControl derives from CWindowImpl
{
public:
// 1. The NULL parameter means ATL will generate a
// name for the superclass
// 2. The "EDIT" parameter means the superclass is
// based on the standard Windows Edit box
DECLARE_WND_SUPERCLASS(NULL, _T("EDIT"))
// Remainder of class declaration omitted
Pour plus d’informations sur les classes de fenêtre, consultez Classes de fenêtre dans le Kit de développement logiciel (SDK) Windows.
Pour plus d’informations sur l’utilisation de fenêtres dans ATL, consultez l’article ATL Window Classes.
Spécifications
En-tête : atlwin.h
CWndClassInfo ::m_atom
Contient l’identificateur unique de la classe de fenêtre inscrite.
ATOM m_atom;
CWndClassInfo ::m_bSystemCursor
Si la valeur est TRUE, la ressource de curseur système est chargée lorsque la classe de fenêtre est inscrite.
BOOL m_bSystemCursor;
Notes
Sinon, la ressource de curseur contenue dans votre module sera chargée.
CWndClassInfo
utilise m_bSystemCursor
uniquement lorsque la DECLARE_WND_CLASS (valeur par défaut dans CWindowImpl) ou la macro DECLARE_WND_CLASS_EX est spécifiée. Dans ce cas, m_bSystemCursor
est initialisé sur TRUE. Pour plus d’informations, consultez la vue d’ensemble de CWndClassInfo .
CWndClassInfo ::m_lpszCursorID
Spécifie le nom de la ressource de curseur ou l’identificateur de ressource dans le mot de bas ordre et zéro dans le mot de classement élevé.
LPCTSTR m_lpszCursorID;
Notes
Lorsque la classe de fenêtre est inscrite, la poignée du curseur identifiée par m_lpszCursorID
est récupérée et stockée par m_wc.
CWndClassInfo
utilise m_lpszCursorID
uniquement lorsque la DECLARE_WND_CLASS (valeur par défaut dans CWindowImpl) ou la macro DECLARE_WND_CLASS_EX est spécifiée. Dans ce cas, m_lpszCursorID
est initialisé pour IDC_ARROW. Pour plus d’informations, consultez la vue d’ensemble de CWndClassInfo .
CWndClassInfo ::m_lpszOrigName
Contient le nom d’une classe de fenêtre existante.
LPCTSTR m_lpszOrigName;
Notes
CWndClassInfo
utilise m_lpszOrigName
uniquement lorsque vous incluez la macro DECLARE_WND_SUPERCLASS dans votre définition de classe. Dans ce cas, CWndClassInfo
inscrit une classe de fenêtre en fonction de la classe nommée par m_lpszOrigName
. Pour plus d’informations, consultez la vue d’ensemble de CWndClassInfo .
CWndClassInfo ::m_szAutoName
Contient le nom de la classe de fenêtre.
TCHAR m_szAutoName[13];
Notes
CWndClassInfo
utilise m_szAutoName
uniquement si LA valeur NULL est passée pour le WndClassName
paramètre à DECLARE_WND_CLASS, à la DECLARE_WND_CLASS_EX ou DECLARE_WND_SUPERCLASS. ATL construit un nom lorsque la classe de fenêtre est inscrite.
CWndClassInfo ::m_wc
Gère les informations de classe de fenêtre dans une structure WNDCLASSEX .
WNDCLASSEX m_wc;
Notes
Si vous avez spécifié la DECLARE_WND_CLASS (valeur par défaut dans CWindowImpl) ou la macro DECLARE_WND_CLASS_EX , m_wc
contient des informations sur une nouvelle classe de fenêtre.
Si vous avez spécifié la macro DECLARE_WND_SUPERCLASS , m_wc
contient des informations sur une superclasse , une classe de fenêtre basée sur une classe existante, mais qui utilise une procédure de fenêtre différente. m_lpszOrigName et pWndProc enregistrent respectivement le nom et la procédure de fenêtre de la classe de fenêtre existante.
CWndClassInfo ::p WndProc
Pointe vers la procédure de fenêtre d’une classe de fenêtre existante.
WNDPROC pWndProc;
Notes
CWndClassInfo
utilise pWndProc
uniquement lorsque vous incluez la macro DECLARE_WND_SUPERCLASS dans votre définition de classe. Dans ce cas, CWndClassInfo
inscrit une classe de fenêtre basée sur une classe existante, mais utilise une procédure de fenêtre différente. La procédure de fenêtre de la classe de fenêtre existante est enregistrée dans pWndProc
. Pour plus d’informations, consultez la vue d’ensemble de CWndClassInfo .
CWndClassInfo ::Register
Appelé par CWindowImpl ::Create pour inscrire la classe de fenêtre si elle n’a pas encore été inscrite.
ATOM Register(WNDPROC* pProc);
Paramètres
pProc
[out] Spécifie la procédure de fenêtre d’origine d’une classe de fenêtre existante.
Valeur de retour
En cas de réussite, un atome qui identifie de façon unique la classe de fenêtre inscrite. Sinon, il prend la valeur 0.
Notes
Si vous avez spécifié la DECLARE_WND_CLASS (valeur par défaut dans CWindowImpl) ou la macro DECLARE_WND_CLASS_EX , Register
inscrit une nouvelle classe de fenêtre. Dans ce cas, le paramètre pProc n’est pas utilisé.
Si vous avez spécifié la macro DECLARE_WND_SUPERCLASS , Register
inscrit une superclasse , une classe de fenêtre basée sur une classe existante, mais utilise une procédure de fenêtre différente. La procédure de fenêtre de la classe de fenêtre existante est retournée dans pProc.