CWindowImpl

modèle lt, classeTclasseTBase= CWindow, classeTWinTraits= CControlWinTraits >
classe ATL_NO_VTABLE CWindowImpl : public CWindowImplBaseT <
TBase, TWinTraits >

Paramètres

T

Votre classe dérivée de CWindowImpl.

TBase

La classe de base de votre nouvelle classe. La classe de base par défaut est CWindow.

TWinTrait

Une classe de caractères qui définit les styles pour votre fenêtre. La valeur par défaut est CControlWinTraits.

CWindowImpl vous permet de créer une nouvelle fenêtre ou la sous-classe une fenêtre existante. Procédure de fenêtre de CWindowImplutilise une carte message pour diriger les messages pour les gestionnaires d'événements appropriés.

CWindowImpl::Create crée une nouvelle fenêtre basée sur les informations de classe de fenêtre gérées par CWndClassInfo. CWindowImpl contient la macro DECLARE_WND_CLASS , qui signifie que CWndClassInfo enregistrera une nouvelle classe de fenêtre. Si vous voulez superclasse une classe de fenêtre existante, dérivez votre classe de CWindowImpl et inclure la macro DECLARE_WND_SUPERCLASS . Dans ce cas, CWndClassInfo , inscrivez à une classe de fenêtre qui est basée sur une classe existante, mais qui utilise CWindowImpl::WindowProc. Par exemple

classe CMyWindow : CComControllt ;CMyWindow >,...
                / / CComControl dérive de CWindowImpl
{
public :
   // 1. Le paramètre NULL signifie ATL génère une
   / / nom de la superclasse
   // 2. Le paramètre « EDIT » signifie la superclasse
   et basé sur la boîte d'édition Windows standard
   DECLARE_WND_SUPERCLASS (NULL, « EDIT »)
   ...
};

&Notenbsp ;  Parce que CWndClassInfo gère les informations pour une classe de fenêtre unique, chaque fenêtre créée via une instance de CWindowImpl reposera sur la même classe de fenêtre.

CWindowImpl prend également en charge le sous-classement de fenêtre. La méthode SubclassWindow attache une fenêtre existante de l'objet CWindowImpl et modifie la procédure de fenêtre à CWindowImpl::WindowProc. Chaque instance de CWindowImpl pouvez sous-classe une fenêtre différente.

&Notenbsp ;  Pour n'importe quel objet donné de CWindowImpl , appelez Create ou SubclassWindow. Vous ne devez pas appeler les méthodes sur l'objet même.

En plus de CWindowImpl, ATL propose CContainedWindow pour créer une fenêtre dans un autre objet.

Le destructeur de la classe de base (~CWindowImplRoot) s'assure que la fenêtre est disparue avant que l'objet est détruit.

CWindowImpl dérive de CWindowImplBaseT, qui dérive de CWindowImplRoot, qui dérive à son tour de TBase et CMessageMap.

Pour plus d'informations Voir
Création de contrôles Didacticiel ATL
À l'aide de windows en ATL Classes de fenêtre ATL
Assistant objet ATL Création d'un projet ATL
Windows Windows et les rubriques suivantes dans le SDK de la plate-forme
Sous-classement Sous-classement de fenêtre procédure dans la plate-forme SDK
Surclassement Fenêtre procédure surclasser dans la plate-forme SDK

# include lt;atlwin.h>

Membres de classe

Voir aussi

BEGIN_MSG_MAP, CComControl

Index