Compartilhar via


Estrutura CREATESTRUCTW (winuser.h)

Define os parâmetros de inicialização passados para o procedimento de janela de um aplicativo. Esses membros são idênticos aos parâmetros da função CreateWindowEx .

Sintaxe

typedef struct tagCREATESTRUCTW {
  LPVOID    lpCreateParams;
  HINSTANCE hInstance;
  HMENU     hMenu;
  HWND      hwndParent;
  int       cy;
  int       cx;
  int       y;
  int       x;
  LONG      style;
  LPCWSTR   lpszName;
  LPCWSTR   lpszClass;
  DWORD     dwExStyle;
} CREATESTRUCTW, *LPCREATESTRUCTW;

Membros

lpCreateParams

Tipo: LPVOID

Contém dados adicionais que podem ser usados para criar a janela. Se a janela estiver sendo criada como resultado de uma chamada para a função CreateWindow ou CreateWindowEx , esse membro conterá o valor do parâmetro lpParam especificado na chamada de função.

Se a janela que está sendo criada for uma janela de cliente MDI, esse membro conterá um ponteiro para uma estrutura CLIENTCREATESTRUCT . Se a janela que está sendo criada for uma janela filho MDI, esse membro conterá um ponteiro para uma estrutura MDICREATESTRUCT .

Se a janela estiver sendo criada a partir de um modelo de caixa de diálogo, esse membro será o endereço de um valor SHORT que especifica o tamanho, em bytes, dos dados de criação da janela. O valor é seguido imediatamente pelos dados de criação. Para obter mais informações, consulte a seção Comentários a seguir.

hInstance

Tipo: HINSTANCE

Um identificador para o módulo que possui a nova janela.

hMenu

Tipo: HMENU

Um identificador para o menu a ser usado pela nova janela.

hwndParent

Digite: HWND

Um identificador para a janela pai, se a janela for uma janela filho. Se a janela for de propriedade, esse membro identificará a janela do proprietário. Se a janela não for uma janela filho ou de propriedade, esse membro será NULL.

cy

Tipo: int

A altura da nova janela, em pixels.

cx

Tipo: int

A largura da nova janela, em pixels.

y

Tipo: int

A coordenada y do canto superior esquerdo da nova janela. Se a nova janela for uma janela filho, as coordenadas serão relativas à janela pai. Caso contrário, as coordenadas serão relativas à origem da tela.

x

Tipo: int

A coordenada x do canto superior esquerdo da nova janela. Se a nova janela for uma janela filho, as coordenadas serão relativas à janela pai. Caso contrário, as coordenadas serão relativas à origem da tela.

style

Tipo: LONG

O estilo da nova janela. Para obter uma lista de valores possíveis, consulte Estilos de janela.

lpszName

Tipo: LPCTSTR

O nome da nova janela.

lpszClass

Tipo: LPCTSTR

Um ponteiro para uma cadeia de caracteres terminada em nulo ou um atom que especifica o nome da classe da nova janela.

dwExStyle

Tipo: DWORD

O estilo de janela estendida para a nova janela. Para obter uma lista de valores possíveis, consulte Estilos de janela estendidos.

Comentários

Como o membro lpszClass pode conter um ponteiro para um atom local (e, portanto, inacessível), não obtenha o nome da classe usando esse membro. Em vez disso, use a função GetClassName .

Você deve acessar os dados representados pelo membro lpCreateParams usando um ponteiro que foi declarado usando o tipo UNALIGNED , pois o ponteiro pode não estar alinhado a DWORD . Isso é demonstrado no exemplo a seguir:

typedef struct tagMyData 
{
    // Define creation data here. 
} MYDATA; 
 
typedef struct tagMyDlgData 
{ 
    SHORT   cbExtra; 
    MYDATA  myData; 
} MYDLGDATA, UNALIGNED *PMYDLGDATA; 
 
PMYDLGDATA pMyDlgdata = (PMYDLGDATA) (((LPCREATESTRUCT) lParam)->lpCreateParams);

Observação

O cabeçalho winuser.h define CREATESTRUCT como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho winuser.h (inclua Windows.h)

Confira também

Sobre a interface de vários documentos

Conceitual

Createwindow

Createwindowex

MDICREATESTRUCT

Referência

Windows