Поделиться через


CWnd::Create

Создает указанное дочернее окно и его к объекту вложение CWnd.

virtual BOOL Create(
   LPCTSTR lpszClassName,
   LPCTSTR lpszWindowName,
   DWORD dwStyle,
   Const RECT& rect,
   CWnd* pParentWnd,
   UINT nID,
   CCreateContext* pContext = NULL
);

Параметры

  • [входящий] lpszClassName
    Указатель на null- завершенной строку, содержащую имя зарегистрированного класса окна системы; имя предопределенного класса окна системы.

  • [входящий] lpszWindowName
    Указатель на null- завершенной строку, содержащую отображаемое имя окна; в противном случае NULL для отображаемого имени без окна.

  • [входящий] dwStyle
    Побитовое сочетание (ИЛИ) стили окна. Параметр WS_POPUP не является допустимым стиля.

  • [входящий] rect
    Размер и расположение окна относительно верхнего левого TOP- родительского окна.

  • [входящий] pParentWnd
    Указатель родительского окна.

  • [входящий] nID
    Идентификатор окна.

  • [входящий] pContext
    Указатель на структуру CCreateContext, используемую для настройки архитектура документ- вид приложения.

Возвращаемое значение

TRUE, если метод был выполнен успешно; в противном случае FALSE.

Заметки

Предупреждение

Теперь элемент hMenu CWnd::PreCreateWindow присвоит значения CREATESTRUCT к указателю this если меню NULL и стиль содержит WS_CHILD.Для правильного описания функциональности, убедитесь в том, что элемент управления диалогового окна с идентификатором, не NULL.

Это изменение исправляет после сбоя в управляемых и собственных сценариях взаимодействия.Оператор TRACE в CWnd::Create предупреждения разработчик проблемы.

Используйте функцию AfxRegisterWndClass чтобы зарегистрировать классы окна. Определяемые пользователем классы окна доступны в модуле, в котором они зарегистрированы.

Метод CWnd::OnCreate вызван перед вызовом метода Create возвращает и перед ним будет видимым.

Пример

// 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);
}

Требования

заголовок: afxwin.h

См. также

Ссылки

Класс CWnd

Диаграмма иерархии

CWnd::CWnd

CWnd::CreateEx

CreateWindowEx