Conhecer o Windows - Parte 8 Volume - Interface de Usuário do Windows Introdução Esta é parte de minha série 8, Conhecendo o Windows. Eu suponho que você leu todos os tutoriais anteriores antes desta. Você deve ler os tutoriais na ordem dada. Nesta parte da série olhamos para codificação básica de procedimento classe janela. Nota: Se você não pode ver o código ou se você acha que alguma coisa está faltando (link quebrado, imagem ausente), apenas contacte-me em [email protected]. Ou seja, contacte-me para o menor problema que você tem sobre o que você está lendo.
Estrutura da Classe procedimento janela O procedimento de classe de janela tem quatro parâmetros e retorna um valor único. O conjunto de quatro parâmetros é a mensagem da fila do sistema. Temos conversado sobre isso antes. O corpo do procedimento usa um interruptor construir como que para C ++. Você pode ter aninhados interruptor construções. Um procedimento janela típica O seguinte é um código de procedimento de janela típica: LRESULT CALLBACK MainWndProc (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) {switch (uMsg) {case WM_CREATE: //Inicializar a janela.
retornar 0; caso WM_PAINT: //Pinte área cliente da janela. retornar 0; caso WM_CLOSE: //Finalize. retornar 0; caso WM_DESTROY: //limpar objetos de dados específicas da janela. retornar 0; ////Processo de outras mensagens. //Default: voltar DefWindowProc (hwnd, uMsg, wParam, lParam); } Return 0; } Cada bloco CASE tem uma ou mais declarações. Tudo sendo igual, a última declaração deve ser "retornar 0". Para os casos descritos a mensagem é recebida pelo parâmetro uMsg. As partes da mensagem nos parâmetros wParam e lParam não são importantes para nós agora (assumir isso).
A mensagem WM_CREATE é enviada para o procedimento apenas depois de sua janela é criada. Para este caso no processo, você pode fazer alguma Inicialização da janela, como escrever algum texto inicial na janela. Veremos detalhes mais tarde. Leia o código do procedimento acima, se você não tiver feito isso. A partir da parte anterior da série, lembre-se que depois de criar a janela que você chamar a função UpdateWindow para a pintura de área de cliente da janela. Esta função envia a mensagem WM_PAINT para a fila de sistema.
A mensagem chega rapidamente no procedimento (enviado pelo ENQUANTO Loop). As demonstrações que você digita para o WM_PAINT CASE no procedimento deve pintar a janela. Veremos detalhes mais tarde. Espero que agora estão apreciando codificação Interfa
net