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


CWnd::CreateEx

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

virtual BOOL CreateEx(
   DWORD dwExStyle,
   LPCTSTR lpszClassName,
   LPCTSTR lpszWindowName,
   DWORD dwStyle,
   int x,
   int y,
   int nWidth,
   int nHeight,
   HWND hWndParent,
   HMENU nIDorHMenu,
   LPVOID lpParam = NULL 
);
virtual BOOL CreateEx(
   DWORD dwExStyle,
   LPCTSTR lpszClassName,
   LPCTSTR lpszWindowName,
   DWORD dwStyle,
   const RECT& rect,
   CWnd* pParentWnd,
   UINT nID,
   LPVOID lpParam = NULL
);

Параметры

  • dwExStyle
    Побитовое сочетание расширенные стили окна(ИЛИ); в противном случае NULL по умолчанию для расширенного стиля окна.

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

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

  • dwStyle
    Побитовое сочетание стили окна(ИЛИ); в противном случае NULL по умолчанию для стиля окна.

  • x
    Начальное расстояние по горизонтали окна до левого края экрана или родительского окна.

  • y
    Начальное расстояние по вертикали между началом экрана окна или родительского окна.

  • nWidth
    Ширина (в точках) окна.

  • nHeight
    Высота (в точках) окна.

  • hwndParent
    Для дочернего окна дескриптор родительского окна; в противном случае – дескриптор окна "Владелец", если окно имеет владельца.

  • nIDorHMenu
    Для дочернего окна, идентификатор окна; в противном случае идентификатор меню для окна.

  • lpParam
    Указатель к пользователю, который передается методу CWnd::OnCreate в поле lpCreateParams.

  • rect
    Размер и расположение окна относительно экран или родительского окна.

  • pParentWnd
    Для дочернего окна, указатель родительского окна; в противном случае, указатель на поле "Владелец", если окно имеет владельца.

  • nID
    Для дочернего окна, идентификатор окна; в противном случае идентификатор меню для окна.

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

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

Заметки

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

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

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

По умолчанию расширенный стиль окна WS_EX_LEFT. По умолчанию стиль окна WS_OVERLAPPED.

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

Измерения для дочерних окон TOP- относительно верхнего левого края клиентской области родительского окна. Измерения верхнего уровня windows, относительно верхнего левого угла экрана TOP-.

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

Пример

void CMyDlg::OnCreateExtendedControl() 
{
   // m_pWndStaticEx is a CWnd* member of CMyDlg
   m_pWndStaticEx = new CStatic;
   m_pWndStaticEx->CreateEx(WS_EX_CLIENTEDGE, // Make a client edge label.
      _T("STATIC"), _T("Hi"),
      WS_CHILD | WS_TABSTOP | WS_VISIBLE,
      5, 5, 30, 30, m_hWnd, (HMENU)2345);
}

Требования

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

См. также

Ссылки

Класс CWnd

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

CWnd::Create

CreateWindowEx