Quando o usuário seleciona um botão, suas alterações de Estado e o botão envia mensagens de notificação para sua janela pai. Por exemplo, um Controlarar de botão envia a mensagem de notificação BN_CLICKED sempre que o usuário escolhe o botão. Em todos os casos, a baixa-palavra de ordem wParam parâmetro contém o identificador de Controlarar, o alto palavra de ordem wParam contém o código de notificação e o lParam parâmetro contém o identificador de janela do controle.
A mensagem e resposta da janela pai dependem o tipo, estilo e estado atual do botão. A seguir estão as mensagens de notificação de botão, que um aplicativo deve monitorar e processo.
Mensagem | Descrição |
---|---|
BN_CLICKED | O usuário clicou um botão. |
BN_DBLCLK | O usuário clicou duas vezes em um botão. |
BN_DISABLE | Um botão é desabilitado. |
BN_PUSHED | O usuário pressionado um botão. |
BN_KILLFOCUS | O botão perdeu o foco do teclado. |
BN_PAINT | O botão deve ser pintado. |
BN_SETFOCUS | O botão ganhou o foco do teclado. |
BN_UNPUSHED | O botão é pressionado já não. |
Um botão envia o BN_DISABLE, BN_PUSHED, BN_KILLFOCUS, BN_PAINT, BN_SETFOCUSe BN_UNPUSHED mensagens de notificação somente se ele tiver o estilo BS_NOTIFY. Ele envia as mensagens de notificação BN_CLICKED e BN_DBLCLK independentemente do estilo BS_NOTIFY.
Para botões automáticos, o sistema muda o estado de envio e pinta o botão. Neste caso, o aplicativo normalmente processa somente as mensagens de notificação BN_CLICKED e BN_DBLCLK. Para os botões que não são automáticas, o aplicativo normalmente responde à mensagem de notificação enviando uma mensagem para alterar o estado do botão. Para obter informações sobre como enviar mensagens para botões, consulte mensagens para botões.
Quando o usuário seleciona um botão owner-drawn, o botão envia seu janela pai uma mensagem WM_DRAWITEM que contém o identificador do controle a ser desenhado e informações sobre suas dimensões e Estado. Para obter mais informações sobre esta mensagem, consulte Using Owner-Drawn botões.