CWnd::Create
Crée la fenêtre enfant spécifiée et la attaché à l'objet de CWnd .
virtual BOOL Create(
LPCTSTR lpszClassName,
LPCTSTR lpszWindowName,
DWORD dwStyle,
Const RECT& rect,
CWnd* pParentWnd,
UINT nID,
CCreateContext* pContext = NULL
);
Paramètres
[in] lpszClassName
Pointeur vers une chaîne terminée par le caractère NULL qui contient le nom d'une classe de fenêtre stockée de système ; ou le nom d'une classe windows intégrée du système.[in] lpszWindowName
Pointeur vers une chaîne terminée par le caractère NULL qui contient le nom complet de la fenêtre ; sinon NULL pour tout nom complet de la fenêtre.[in] dwStyle
Combinaison d'opérations de bits (OR) de styles de fenêtre. l'option d' WS_POPUP n'est pas un style valide.[in] rect
La taille et l'emplacement de la fenêtre par rapport à l'angle supérieur gauche de la fenêtre parente.[in] pParentWnd
Pointeur vers la fenêtre parente.[in] nID
ID de la fenêtre.[in] pContext
Pointeur vers une structure de CCreateContext utilisée pour personnaliser l'architecture Document/Vue de l'application.
Valeur de retour
TRUE si la méthode a réussi ; sinon FALSE.
Notes
Avertissement
CWnd::PreCreateWindow affecte maintenant le membre de hMenu de son paramètre d' CREATESTRUCT au pointeur d' this si le menu est NULL et le style contient WS_CHILD.Pour la fonctionnalité appropriée, assurez -vous que votre contrôle de boîte de dialogue a un ID qui n'est pas NULL.
Cette modification résout un incident dans scénarios d'interopérabilité managés/natifs.Une instruction d' TRACE dans CWnd::Create alerte le développeur du problème.
Utilisez la fonction d' AfxRegisterWndClass pour stocker des classes de fenêtres. Les classes de fenêtres définies par l'utilisateur sont disponibles dans le module dans lequel elles sont enregistrées.
La méthode de CWnd::OnCreate est appelée avant que la méthode d' Create retourne, et avant que la fenêtre devient visible.
Exemple
// Dynamically create static control using CWnd::Create,
// instead of with CStatic::Create, which doesn't
// need the "STATIC" class name.
void CMyDlg::OnCreateStatic()
{
// m_pWndStatic is a CWnd* member of CMyDlg
m_pWndStatic = new CWnd;
m_pWndStatic->Create(_T("STATIC"), _T("Hi"), WS_CHILD | WS_VISIBLE,
CRect(0, 0, 20, 20), this, 1234);
}
Configuration requise
en-tête : afxwin.h