O CreateWindowEx função cria uma sobreposto, pop-up ou janela filho com um estendido estilo; caso contrário, essa função é idêntica de CreateWindow função. Para obter mais informações sobre como criar uma janela e para obter descrições completas dos outros parâmetros da CreateWindowEx, consulte CreateWindow.
(HWND CreateWindowEx DWORD dwExStyle, / / estilo de janela estendidoLPCTSTRBoolean, / / ponteiro para registados o nome de classeLPCTSTRlpWindowName, / / ponteiro para nome da janelaDWORDdwStyle, / / estilo de janela int x, / / horizontal posição da janela int y, / / vertical posição da janela intnWidth, / / largura da janela intnHeight, / / altura da janelaHWNDhWndParent, / / identificador para janela pai ou proprietárioHMENUhMenu, / / identificador para o menu, ou filho-identificador janelaHINSTANCEhInstance, / / identificador de instância de aplicativoLPVOIDlpParam / / ponteiro para dados de criação de janela);
| Estilo | Significado |
|---|---|
| WS_EX_ACCEPTFILES | Especifica que uma janela criada com este estilo aceita arrastar-soltar arquivos. |
| WS_EX_APPWINDOW | Força uma janela de alto nível para a barra de tarefas quando a janela está visível. |
| WS_EX_CLIENTEDGE | Especifica que uma janela tem uma borda com um baixo relevo borda. |
| WS_EX_CONTEXTHELP | Inclui um ponto de interrogação na barra de título da janela. Quando o usuário clica o ponto de interrogação, o cursor muda para um ponto de interrogação com um ponteiro. Se o usuário clica em uma janela filho, o filho recebe uma mensagem WM_HELP. A janela de filho deve transmitir a mensagem para o procedimento de janela pai, que deve chamar a função de WinHelp usando o comando HELP_WM_HELP. O aplicativo de ajuda exibe uma janela pop-up que normalmente contém ajuda para a janela filho. WS_EX_CONTEXTHELP não pode ser usado com os estilos WS_MAXIMIZEBOX ou WS_MINIMIZEBOX. |
| WS_EX_CONTROLPARENT | Permite ao usuário navegar entre as janelas filho da janela usando a tecla tab. |
| WS_EX_DLGMODALFRAME | Cria uma janela que tenha uma borda Duplo; a janela pode, opcionalmente, ser criada com uma barra de título, especificando o estilo WS_CAPTION in a dwStyle parâmetro. |
| WS_EX_LEFT | Janela possui genérico Propriedades "alinhado à esquerda". Este é o padrão. |
| WS_EX_LEFTSCROLLBAR | Se a linguagem shell for Hebraico, árabe ou outra linguagem que oferece suporte à leitura alinhamento ordem, a barra de rolagem vertical (se houver) está à esquerda da área cliente. Para outros idiomas, o estilo é ignorado e não tratado como um erro. |
| WS_EX_LTRREADING | O texto janela é exibido usando esquerda para a direita propriedades de ordem de leitura. Este é o padrão. |
| WS_EX_MDICHILD | Cria uma janela filho MDI. |
| WS_EX_NOPARENTNOTIFY | Especifica que uma janela de filho criada com este estilo não envia a mensagem WM_PARENTNOTIFY para seu janela pai quando ele é criado ou destruído. |
| WS_EX_OVERLAPPEDWINDOW | Combina os estilos WS_EX_CLIENTEDGE e WS_EX_WINDOWEDGE. |
| WS_EX_PALETTEWINDOW | Combina os estilos WS_EX_WINDOWEDGE, WS_EX_TOOLWINDOW e WS_EX_TOPMOST. |
| WS_EX_RIGHT | A janela possui genérico Propriedades "alinhado à direita". Isso depende da classe de janela. Este estilo tem efeito apenas se a linguagem shell for Hebraico, árabe ou outra linguagem que oferece suporte à leitura ordem alinhamento; caso contrário, o estilo é ignorado e não tratado como um erro. |
| WS_EX_RIGHTSCROLLBAR | Barra de rolagem vertical (se houver) está no lado direito da área cliente. Este é o padrão. |
| WS_EX_RTLREADING | Se a linguagem shell for Hebraico, árabe ou outra linguagem que oferece suporte à leitura alinhamento ordem, o texto janela é exibido usando direito a propriedades de ordem de leitura da esquerda. Para outros idiomas, o estilo é ignorado e não tratado como um erro. |
| WS_EX_STATICEDGE | Cria uma janela com um borda tridimensional estilo que se destina a ser usado para itens que não não aceitarem entrada usuário. |
| WS_EX_TOOLWINDOW | Cria uma janela de ferramenta; ou seja, uma janela deve ser usado como uma barra de ferramentas flutuante. Uma janela de ferramenta tem uma barra de título que é menor que uma barra de título normal, e o título da janela é desenhado usando uma fonte menor. Uma janela de ferramenta não aparece na barra de tarefas ou na caixa de diálogo que aparece quando o usuário pressiona alt + guia. Se uma janela de ferramenta tem um menu de sistema, seu ícone não será exibido na barra de título. No entanto, você pode exibir o menu sistema clicando ou digitando alt + space. |
| WS_EX_TOPMOST | Especifica que uma janela criada com este estilo deve ser colocada acima de tudo não-superior windows e deve permanecer acima deles, mesmo quando a janela é desativada. Para adicionar ou remover esse estilo, use o SetWindowPos função. |
| WS_EX_TRANSPARENT | Especifica que uma janela criada com este estilo não deve ser pintada até irmãos sob a janela (que foram criados pelo mesmo segmento) tem sido pintados. A janela aparece transparente porque os bits de subjacente janelas irmão já têm sido pintados. Para atingir transparência sem essas restrições, use o SetWindowRgn função. |
| WS_EX_WINDOWEDGE | Especifica que uma janela tem uma borda com uma borda saliente. |
Usar o estilo de WS_EX_RIGHT para estático ou editar controles tem o mesmo efeito que usando o estilo SS_RIGHT ou ES_RIGHT, respectivamente. Usar este estilo com controles de botão tem o mesmo efeito que usando estilos BS_RIGHT e BS_RIGHTBUTTON.
Se Boolean é uma seqüência de caracteres, ele especifica o nome de classe de janela. O nome de classe pode ser qualquer nome registrado com a função de RegisterClassEx ou qualquer um dos nomes predefinidos de classe de Controlarar.
Se o estilo janela Especifica uma barra de título, o título janela apontado pelo lpWindowName é exibido na barra de título. Ao usar CreateWindow para criar controles, como botões, caixas de seleção e controles estáticos, use lpWindowName para especificar o texto do controle.
| Estilo | Significado |
|---|---|
| WS_BORDER | Cria uma janela que tenha uma borda de linha fina. |
| WS_CAPTION | Cria uma janela que tenha uma barra de título (inclui o estilo WS_BORDER). |
| ESTILO | Cria um janela filho. Esse estilo não pode ser usado com o estilo WS_POPUP. |
| WS_CHILDWINDOW | Mesmo que o estilo de estilo. |
| WS_CLIPCHILDREN | Exclui a área ocupada por janelas filho ao desenho ocorre dentro de janela pai. Esse estilo é usado ao criar a janela pai. |
| WS_CLIPSIBLINGS | Clipes filho windows entre si; ou seja, quando um determinado janela filho recebe um WM_PAINT mensagem, o estilo WS_CLIPSIBLINGS clipes todas as outras janelas filho sobrepostos fora da região do janela filho ser atualizado. Se WS_CLIPSIBLINGS não for especificado e sobreposição janelas filho, é possível, ao desenho dentro a área cliente de uma janela filho, desenhar dentro a área cliente de uma janela filho vizinhos. |
| WS_DISABLED | Cria uma janela que inicialmente está desativada. Uma janela desabilitada não pode receber entrada do usuário. |
| WS_DLGFRAME | Cria uma janela que tenha uma borda de um estilo tipicamente usado com caixas de diálogo. Uma janela com este estilo não pode ter uma barra de título. |
| WS_GROUP | Especifica o primeiro controle de um grupo de controles. O grupo consiste esse controle primeiro e todos os controles definidos depois dela, up to o próximo controle com o estilo WS_GROUP. O primeiro controle em cada grupo geralmente tem o estilo WS_TABSTOP para que o usuário pode mover de grupo para grupo. O usuário pode posteriormente Alterar o foco do teclado de um controle no grupo para o próximo controle no grupo usando as teclas de direção. |
| WS_HSCROLL | Cria uma janela que tenha uma barra de rolagem horizontal. |
| WS_ICONIC | Cria uma janela que inicialmente está minimizada. Mesmo que o estilo WS_MINIMIZE. |
| WS_MAXIMIZE | Cria uma janela que inicialmente está maximizada. |
| WS_MAXIMIZEBOX | Cria uma janela que tenha um botão maximizar. Não pode ser combinado com o estilo WS_EX_CONTEXTHELP. O estilo WS_SYSMENU também deve ser especificado. |
| WS_MINIMIZE | Cria uma janela que inicialmente está minimizada. Mesmo que o estilo WS_ICONIC. |
| WS_MINIMIZEBOX | Cria uma janela que tenha um botão de minimizar. Não pode ser combinado com o estilo WS_EX_CONTEXTHELP. O estilo WS_SYSMENU também deve ser especificado. |
| WS_OVERLAPPED | Cria uma janela sobreposta. Uma janela sobreposta tem uma barra de título e uma borda. Mesmo que o estilo WS_TILED. |
| WS_OVERLAPPEDWINDOW | Cria uma janela sobreposta com os estilos WS_OVERLAPPED, WS_CAPTION, WS_SYSMENU, WS_THICKFRAME, WS_MINIMIZEBOX e WS_MAXIMIZEBOX. Mesmo que o estilo WS_TILEDWINDOW. |
| WS_POPUP | Cria uma janela pop-up. Esse estilo não pode ser usado com o estilo estilo. |
| WS_POPUPWINDOW | Cria uma janela pop-up com estilos WS_BORDER, WS_POPUP e WS_SYSMENU. Os estilos WS_CAPTION e WS_POPUPWINDOW devem ser combinados para tornar o menu janela visível. |
| WS_SIZEBOX | Cria uma janela que tenha uma borda de dimensionamento. Mesmo que o estilo WS_THICKFRAME. |
| WS_SYSMENU | Cria uma janela que tem um menu janela no seu barra de título. Também deve ser especificado o estilo WS_CAPTION. |
| WS_TABSTOP | Especifica um Controlarar que pode receber o foco do teclado quando o usuário pressiona a tecla tab. Pressionando a tecla tab altera o foco do teclado para o Avançar Controlarar com o estilo WS_TABSTOP. |
| WS_THICKFRAME | Cria uma janela que tenha uma borda de dimensionamento. Mesmo que o estilo WS_SIZEBOX. |
| WS_TILED | Cria uma janela sobreposta. Uma janela sobreposta tem uma barra de título e uma borda. Mesmo que o estilo WS_OVERLAPPED. |
| WS_TILEDWINDOW | Cria uma janela sobreposta com os estilos WS_OVERLAPPED, WS_CAPTION, WS_SYSMENU, WS_THICKFRAME, WS_MINIMIZEBOX e WS_MAXIMIZEBOX. Mesmo que o estilo WS_OVERLAPPEDWINDOW. |
| WS_VISIBLE | Cria uma janela que é inicialmente visível. |
| WS_VSCROLL | Cria uma janela que tenha uma barra de rolagem vertical. |
Se x for definido para CW_USEDEFAULT, o sistema seleciona a posição padrão para o canto superior esquerdo da janela e ignora a y parâmetro. CW_USEDEFAULT é válido somente para janelas sobrepostas; se for especificada para uma janela pop-up ou filho janela, o x e y parâmetros são definidos como zero.
Se uma janela sobreposta é criada com o estilo WS_VISIBLE bit definido e o x parâmetro for definido para CW_USEDEFAULT, o sistema ignora a y parâmetro.
Windows NT 5.0 e posterior: Para criar uma janela apenas para mensagens, fornecer HWND_MESSAGE ou um identificador para uma janela somente de mensagens existente.
Se a função for bem-sucedido, o valor de retorno é um identificador para a janela nova.
Se a função falhar, o valor de retorno é NULL. Para informações de erro estendidas get, chamar GetLastError.
O CreateWindowEx função envia mensagens WM_NCCREATE, WM_NCCALCSIZE e WM_CREATE para a janela que está sendo criada.
Para obter informações sobre como controlar se o barra de tarefas exibe um botão para a janela criada, consulte Visibilidade dos botões da barra de tarefas.
As seguintes classes de controle predefinidos podem ser especificadas in a Boolean parâmetro. Observação que o controle correspondente estilos você pode usar na dwStyle parâmetro.
| Classe | Significado |
|---|---|
| BOTÃO | Designa uma janela filho retangular pequeno que representa um botão que o usuário pode clique para ativar ou desativar a ele. Controles de botão podem ser usados isoladamente ou em grupos, e que qualquer um podem ser rotulados ou aparecem sem texto. Controles de botão normalmente Alterar aparência quando o usuário clica-los. Para obter mais informações, consulte botões. |
| Para uma tabela de estilos de botão, que você pode especificar in a dwStyle parâmetro, consulte Estilos de botão. | |
| CAIXA DE COMBINAÇÃO | Designa um controle consiste em uma caixa de listagem e um campo de seleção semelhante a um Controlarar de editar. Ao usar esse estilo, um aplicativo deve exibir a caixa de lista em todas as vezes ou habilitar uma caixa de listagem de soltar-para baixo. Se a caixa de lista estiver visível, digitar caracteres para o campo de seleção destaca a primeira entrada de caixa de lista que corresponde aos caracteres digitados. Inversamente, selecionando um item na caixa de lista exibe o texto selecionado no campo de seleção. Para obter mais informações, consulte Caixas de combinação. |
| Para uma tabela de estilos de caixa de combinação, que você pode especificar in a dwStyle parâmetro, consulte Estilos de caixa de combinação. | |
| EDITAR | Designa um janela filho retangular na qual o usuário pode digitar texto no teclado. O usuário seleciona o controle e dá-lhe o foco de teclado clicando nele ou movendo-lo pressionando a tecla tab. O usuário pode texto tipo quando o controle editar exibe um cursor piscando; Use o mouse para mover o cursor, selecionados caracteres a ser substituído, ou posicione o cursor para inserir caracteres; ou use a tecla backspace para excluir caracteres. Para obter mais informações, consulte Editar controles. |
| Para uma tabela de estilos de Controlarar de editar, que você pode especificar in a dwStyle parâmetro, consulte Estilos de Controlarar de editar. | |
| CAIXA DE LISTAGEM | Designa uma lista de seqüências de caracteres. Especifique esse controle sempre que um aplicativo deve apresentar uma lista de nomes, tais como nomes de arquivo, do qual o usuário pode escolher. O usuário pode selecionar uma Cadeia de caracteres clicando nele. Uma Cadeia de caracteres selecionada é realçada e uma mensagem de notificação é passada para o janela pai. Para obter mais informações, consulte Caixas de listagem. |
| Para uma tabela de estilos de caixa de lista, que você pode especificar in a dwStyle parâmetro, consulte Estilos de caixa de lista. | |
| MDICLIENT | Designa um janela cliente MDI. Esta janela recebe mensagens que controlam janelas de filho do aplicativo MDI. Os bits recomendados estilo são WS_CLIPCHILDREN e estilo. Especifica os estilos WS_HSCROLL e WS_VSCROLL para criar um janela cliente MDI que permite ao usuário rolar em Exibir de janelas filho MDI. Para obter mais informações, consulte Interface de documentos múltiplos. |
| RichEdit | Designa um controle de versão 1.0 do Rich Editar. Esta janela permite que o modo de exibição do usuário e editar texto com caractere e parágrafo formatação e pode incluir incorporados objetos. Para obter mais informações, consulte Controles de Rich Editar. |
| Para uma tabela dos estilos de Controlarar rich Editar, que você pode especificar in a dwStyle parâmetro, consulte Estilos de Controlarar de Editar Rich. | |
| RICHEDIT_CLASS | Designa um controle de versão 2.0 Rich Edit. Esta controla deixe o modo de exibição do usuário e editar texto com caractere e parágrafo formatação e pode incluir incorporados objetos. Para obter mais informações, consulte Controles de Rich Editar. |
| Para uma tabela dos estilos de Controlarar rich Editar, que você pode especificar in a dwStyle parâmetro, consulte Estilos de Controlarar de Editar Rich. | |
| BARRA DE ROLAGEM | Designa um retângulo que contém uma caixa de rolagem e tem setas direção em ambas as extremidades. A barra de rolagem envia uma mensagem de notificação para sua janela pai quando o usuário clica no Controlarar. O janela pai é responsável por atualizar a posição do caixa de rolagem, se necessário. Para obter mais informações, consulte As barras de rolagem. |
| Para uma tabela de estilos de Controlarar de barra de rolagem que você pode especificar in a dwStyle parâmetro, consulte Estilos de Controlarar barra de rolagem. | |
| ESTÁTICO | Designa um campo de texto simples, caixa ou retângulo usado para rótulo, caixa ou separar outros controles. Controles estáticos não tomar nenhuma entrada e não fornecem nenhuma saída. Para obter mais informações, consulte Controles estáticos. |
| Para uma tabela dos estilos de Controlarar estático, que você pode especificar in a dwStyle parâmetro, consulte Estilos de Controlarar estático. |
Windows 95: O sistema pode oferecer suporte a um máximo de 16.364 identificadores de janela.
Windows CE: Windows CE não oferece suporte a barras de menu de stand alone. O hMenu parâmetro deve ser NULL, a menos que ele é usado como um identificador de janela filho.
Versões do Windows CE 2.0 e posteriores suportam os seguintes dois estilos de janela estendido:
Não há suporte para os seguintes sinalizadores de dwExStyle.
| WS_EX_ACCEPTFILES | WS_EX_LEFTSCROLLBAR |
| WS_EX_LEFT | WS_EX_MDICHILD |
| WS_EX_LTRREADING | WS_EX_PALETTEWINDOW |
| WS_EX_NOPARENTNOTIFY | WS_EX_RIGHTSCROLLBAR |
| WS_EX_RIGHT | WS_EX_TOOLWINDOW |
| WS_EX_RTLREADING | WS_EX_TRANSPARENT |
| WS_EX_APPWINDOW |
Windows CE 1.0 não suporta o estilo WS_EX_TOPMOST. Versões 2.0 e posteriores fazem.
Os seguinte dwStyle os sinalizadores não são com suporte.
| WS_CHILDWINDOW | WS_ICONIC |
| WS_MAXIMIZE | WS_MAXIMIZEBOX |
| WS_MINIMIZE | WS_MINIMIZEBOX |
| WS_OVERLAPPEDWINDOW | WS_POPUPWINDOW |
| WS_SIZEBOX | WS_THICKFRAME |
| WS_TILED | WS_TILEDWINDOW |
Todas as janelas implicitamente têm os estilos WS_CLIPSIBLINGS e WS_CLIPCHILDREN.
Windows CE 1.0 não suporta janelas de propriedade, exceto para as caixas de diálogo. Se o hwndParent parâmetro não é NULL, a janela implicitamente é dado o estilo estilo.
nbsp; Windows &NT: requer a versão 3.1 ou posterior.
Windows:Requer o Windows 95 ou posterior.
Windows CE:Requer versão 1.0 ou posterior.
Cabeçalho:Declarado em WinUser. h.
Biblioteca de importação:Use user32.lib.
Unicode:Implementado como versões Unicode e ANSI no Windows NT.
Visão geral sobre Windows, janela funções, CLIENTCREATESTRUCT, CREATESTRUCT, CreateWindow, GlobalAddAtom, RegisterClassEx, SetWindowPos, WM_CREATE, WM_NCCALCSIZE, WM_NCCREATE, WM_PAINT, WM_PARENTNOTIFY