Estilos de classe

Os estilos de classe definem elementos adicionais da classe janela. Dois ou mais estilos podem ser combinados usando o bit a bit ou operador (|). Para atribuir um estilo a uma classe de janela, atribua o estilo para o estilo membro da estrutura WNDCLASSEX . Os estilos de classe são os seguintes.

Estilo Ação
CS_BYTEALIGNCLIENT Alinha o área cliente da janela em um limite de byte (na direção x). Este estilo afeta a largura da janela e seu posicionamento horizontal no visor.
CS_BYTEALIGNWINDOW Alinha a janela em um limite de byte (na direção x). Este estilo afeta a largura da janela e seu posicionamento horizontal no visor.
CS_CLASSDC Aloca um contexto para dispositivo a ser compartilhado por todas as janelas da classe. Porque as classes de janela são processo específico, é possível que vários threads de um aplicativo para criar uma janela da mesma classe. Também é possível para os threads a tentar usar o contexto para dispositivo simultaneamente. Quando isso acontece, o sistema permite que apenas um thread concluir com êxito a sua operação de desenho. Para obter mais informações, Contextos de dispositivo.
CS_DBLCLKS Envia uma mensagem de clique duplo para o procedimento de janela quando o usuário clica Duplo o mouse enquanto o cursor estiver dentro de uma janela pertencente à classe. Para obter mais informações, consulte Entrada do Mouse.
CS_GLOBALCLASS Especifica que a classe de janela é uma classe de aplicativo global. Para obter mais informações, consulte Classes Global do aplicativo.
CS_HREDRAW Especifica que a janela inteira deve ser redesenhado se um ajuste de movimento ou tamanho altera a largura da área do cliente.
CS_NOCLOSE Desactiva o comando fechar no menu de sistema.
CS_OWNDC Aloca um contexto para dispositivo exclusivo para cada janela na classe. Para obter mais informações sobre contextos de dispositivo, consulte Contextos de dispositivo.
CS_PARENTDC Define o Retangular de recorte da janela filho da janela pai para que a criança pode desenhar no pai. Uma janela com o bit de estilo CS_PARENTDC recebe um contexto de dispositivo regular do cache do sistema de contextos de dispositivo. Ele não dá a criança o pai contexto dispositivo ou configurações de contexto de dispositivo. Especificar CS_PARENTDC melhora o desempenho do aplicativo. Para obter mais informações, consulte Contextos de dispositivo.
CS_SAVEBITS Salva, como um bitmap, a parte da imagem na tela obscurecida por uma janela. O sistema usa o bitmap salvo para recriar a imagem da tela quando a janela é removida. O sistema exibe o bitmap em sua localização original e não envia mensagens WM_PAINT Windows obscurecido pela janela se outras ações de tela não tem invalidado a imagem armazenada. Use este estilo para pequenas janelas que são exibidas brevemente e, em seguida, removidas antes de outra atividade de tela ocorre (por exemplo, menus ou caixas de diálogo). Este estilo aumenta o tempo necessário para exibir a janela, porque o sistema pela primeira vez deve alocar memória para armazenar o bitmap.
CS_VREDRAW Especifica que a janela inteira deve ser redesenhado se um ajuste de movimento ou tamanho altera a altura da área do cliente.

Classes e contextos de dispositivo

Um contexto para dispositivo é um conjunto especial de valores que os aplicativos usam para desenhar na área de cliente de seus windows. O sistema requer um contexto de dispositivo para cada janela na tela, mas permite alguma flexibilidade na forma como o sistema armazena e trata nesse contexto de dispositivo.

Se nenhum estilo de contexto de dispositivo é dada explicitamente, o sistema pressupõe que cada janela usa um contexto de dispositivo obtido em um pool de contextos mantidos pelo sistema. Em tais casos, cada janela deve recuperar e inicializar o contexto de dispositivo antes de pintura e liberá-lo depois que a pintura.

Para evitar a recuperação de um contexto dispositivo cada tempo que ele precisa pintar dentro de uma janela, um aplicativo pode especificar o estilo CS_OWNDC para a classe de janela. Este estilo de classe direciona o sistema para criar um contexto de dispositivo particular — ou seja, alocar um contexto para dispositivo exclusivo para cada janela na classe. O aplicativo precisa apenas recuperar o contexto de uma vez e, em seguida, usá-lo para todos os subsequente pintura.

Windows 95 e Windows 98: Embora o estilo CS_OWNDC é conveniente, usá-lo com cuidado, porque cada contexto dispositivo usa uma parcela significativa da pilha GDI K 64.

Index