Classes de janela (Windows e mensagens)

Este tópico descreve os tipos de classes de janela, como o sistema as localiza e os elementos que definem o comportamento padrão das janelas que pertencem a elas.

Uma classe de janela é um conjunto de atributos que o sistema usa como modelo para criar uma janela. Cada janela é um membro de uma classe de janela. Todas as classes de janela são específicas do processo.

Nesta seção

Nome Descrição
Sobre classes de janela Discute classes de janela. Cada classe de janela tem um procedimento de janela associado compartilhado por todas as janelas da mesma classe. O procedimento de janela processa mensagens para todas as janelas dessa classe e, portanto, controla seu comportamento e aparência.
Usando classes de janela Demonstra como registrar uma janela local e usá-la para criar uma janela main.
Referência da classe Window Contém a referência de API.

 

Funções de classe window

Nome Descrição
GetClassInfoEx Recupera informações sobre uma classe de janela, incluindo um identificador para o pequeno ícone associado à classe de janela. A função GetClassInfo não recupera um identificador para o ícone pequeno.
GetClassLong Recupera o valor de 32 bits (longo) especificado da estrutura WNDCLASSEX associada à janela especificada.
GetClassLongPtr Recupera o valor especificado da estrutura WNDCLASSEX associada à janela especificada.
Getclassname Recupera o nome da classe à qual a janela especificada pertence.
Getwindowlong Recupera informações sobre a janela especificada. A função também recupera o valor de 32 bits (longo) no deslocamento especificado para a memória extra da janela.
GetWindowLongPtr Recupera informações sobre a janela especificada. A função também recupera o valor em um deslocamento especificado na memória extra da janela.
Registerclass Registra uma classe de janela para uso subsequente em chamadas para a função CreateWindow ou CreateWindowEx .
Registerclassex Registra uma classe de janela para uso subsequente em chamadas para a função CreateWindow ou CreateWindowEx .
SetClassLongPtr Substitui o valor especificado no deslocamento especificado na memória de classe extra ou na estrutura WNDCLASSEX para a classe à qual a janela especificada pertence.
SetClassWord Substitui o valor de 16 bits (WORD) no deslocamento especificado na memória de classe extra para a classe de janela à qual a janela especificada pertence.
Setwindowlong Altera um atributo da janela especificada. A função também define o valor de 32 bits (longo) no deslocamento especificado na memória da janela extra.
SetWindowLongPtr Altera um atributo da janela especificada. A função também define um valor no deslocamento especificado na memória de janela extra.
UnregisterClass Cancela o registro de uma classe de janela, liberando a memória necessária para a classe .

 

As funções a seguir são obsoletas.

Nome Descrição
Getclassinfo Recupera informações sobre uma classe de janela.
Nota: A função GetClassInfo foi substituída pela função GetClassInfoEx . No entanto, você ainda poderá usar GetClassInfo se não precisar de informações sobre o ícone pequeno da classe.
GetClassWord Recupera o valor de 16 bits (WORD) no deslocamento especificado para a memória de classe extra para a classe de janela à qual a janela especificada pertence. Nota: Essa função foi preterida para qualquer uso diferente de nIndex definido como GCW_ATOM. A função é fornecida apenas para compatibilidade com versões de 16 bits do Windows. Os aplicativos devem usar a função GetClassLong .
SetClassLong Substitui o valor especificado de 32 bits (longo) no deslocamento especificado na memória de classe extra ou na estrutura WNDCLASSEX da classe à qual a janela especificada pertence. Nota: Essa função foi substituída pela função SetClassLongPtr . Para escrever código compatível com versões de 32 bits e 64 bits do Windows, use SetClassLongPtr.

 

Estruturas de classe de janela

Nome Descrição
WNDCLASS Contém os atributos de classe de janela registrados pela função RegisterClass .
Essa estrutura foi substituída pela estrutura WNDCLASSEX usada com a função RegisterClassEx . Você ainda poderá usar WNDCLASS e RegisterClass se não precisar definir o pequeno ícone associado à classe de janela.
WNDCLASSEX Contém informações de classe de janela. Ele é usado com as funções RegisterClassEx e GetClassInfoEx .
A estrutura WNDCLASSEX é semelhante à estrutura WNDCLASS . Há duas diferenças. WNDCLASSEX inclui o membro cbSize , que especifica o tamanho da estrutura e o membro hIconSm, que contém um identificador para um pequeno ícone associado à classe de janela.