Compartir a través de


CWnd::CreateEx

Crea la ventana especificada y la asocia al objeto de 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
);

Parámetros

  • dwExStyle
    Combinación bit a bit (OR) de estilos de ventana extendidas; si no NULL para el estilo de ventana extendida predeterminada.

  • lpszClassName
    Puntero a una cadena terminada en null que contiene el nombre de una clase de ventana registrada system; o el nombre de una clase de ventana predefinida del sistema.

  • lpszWindowName
    Puntero a una cadena terminada en null que contiene el nombre para mostrar de la ventana; si no NULL para ningún nombre para mostrar de la ventana.

  • dwStyle
    Combinación bit a bit (OR) de estilos de ventana; si no NULL para el estilo de ventana predeterminada.

  • x
    La distancia horizontal inicial de la ventana del lado de la pantalla izquierdo o de la ventana primaria.

  • y
    La distancia vertical inicial de la ventana desde la parte superior de la pantalla o la ventana primaria.

  • nWidth
    el ancho, en píxeles, de la ventana.

  • nHeight
    el alto, en píxeles, de la ventana.

  • hwndParent
    Para una ventana secundaria, el identificador de la ventana primaria; si no, el identificador de la ventana propietaria si la ventana tiene un propietario.

  • nIDorHMenu
    para una ventana secundaria, el identificador de la ventana; si no, el identificador de un menú de la ventana.

  • lpParam
    Puntero a datos de usuario que se pasa al método de CWnd::OnCreate en el campo de lpCreateParams .

  • rect
    El tamaño y la ubicación de la ventana en relación a la pantalla o la ventana primaria.

  • pParentWnd
    para una ventana secundaria, puntero a la ventana primaria; si no, un puntero a la ventana propietaria si la ventana tiene un propietario.

  • nID
    para una ventana secundaria, el identificador de la ventana; si no, el identificador de un menú de la ventana.

Valor devuelto

TRUE si el método fue correcto; si no FALSE.

Comentarios

Nota de precauciónPrecaución

CWnd::PreCreateWindow ahora asigna el miembro de hMenu del parámetro de CREATESTRUCT el puntero de this si el menú es NULL y estilo contiene WS_CHILD.Para obtener la funcionalidad correcta, asegúrese de que el control de cuadro de diálogo tiene un id. que no es NULL.

Este cambio corrige un bloqueo en escenarios administradas y nativas de interoperabilidad.Un fragmento de TRACE en CWnd::Create avisa el desarrollador del problema.

El estilo de ventana extendida predeterminada es WS_EX_LEFT.El estilo de ventana predeterminada es WS_OVERLAPPED.

utilice la función de Clase para registrar clases de ventana.Las clases de ventana definido por el usuario están disponibles en el módulo donde se registran.

Las dimensiones para ventanas secundarias son relativas a la esquina superior izquierda del área de cliente de la ventana primaria.Las dimensiones de las ventanas de nivel superior son relativas a la esquina superior izquierda de la pantalla.

Se llama al método de CWnd::OnCreate antes de que el método de CreateEx vuelva, y antes de la ventana se vuelve visible.

Ejemplo

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

Requisitos

encabezado: afxwin.h

Vea también

Referencia

Clase de CWnd

Gráfico de jerarquía

CWnd::Create

CreateWindowEx