Partilhar via


Entrada do usuário em um aplicativo do Windows Forms

No Windows Forms, a entrada do usuário é enviada para aplicativos na forma de mensagens do Windows. Uma série de métodos substituíveis processam essas mensagens no nível do aplicativo, formulário e controle. Quando esses métodos recebem mensagens de mouse e teclado, eles geram eventos que podem ser manipulados para obter informações sobre a entrada de mouse ou de teclado. Em muitos casos, os aplicativos do Windows Forms serão capazes de processar todas as entradas do usuário simplesmente manipulando esses eventos. Em outros casos, um aplicativo pode precisar substituir um dos métodos que processam mensagens para interceptar uma mensagem específica antes de ela ser recebida pelo aplicativo, formulário ou controle.

Eventos de Mouse e Teclado

Todos os controles do Windows Forms herdam um conjunto de eventos relacionados às entradas de mouse e teclado. Por exemplo, um controle pode manipular o evento para determinar o código de caractere de uma tecla que foi pressionada ou um controle pode manipular o evento para determinar o KeyPressMouseClick local de um clique do mouse. Para obter mais informações sobre eventos de mouse e teclado, consulte Usando Eventos de Teclado e Eventos de Mouse no Windows Forms.

Métodos que Processam Mensagens de Entrada do Usuário

Formulários e controles têm acesso à IMessageFilter interface e a um conjunto de métodos substituíveis que processam mensagens do Windows em diferentes pontos da fila de mensagens. Todos esses métodos têm um Message parâmetro, que encapsula os detalhes de baixo nível das mensagens do Windows. É possível implementar ou substituir esses métodos para analisar a mensagem e, então, consumi-la ou passá-la para o próximo consumidor na fila de mensagens. A tabela a seguir apresenta os métodos que processam todas as mensagens do Windows no Windows Forms.

Método Observações
PreFilterMessage Este método intercepta mensagens do Windows que estão na fila (também chamadas de postadas) no nível do aplicativo.
PreProcessMessage Este método intercepta as mensagens do Windows no nível do formulário e do controle antes que elas sejam processadas.
WndProc Este método processa mensagens do Windows no nível do formulário e do controle.
DefWndProc Esse método realiza o processamento padrão de mensagens do Windows no nível do formulário e do controle. Isso fornece a funcionalidade mínima de uma janela.
OnNotifyMessage Este método intercepta as mensagens do Windows no nível do formulário e do controle após o seu processamento. O EnableNotifyMessage bit de estilo deve ser definido para que esse método seja chamado.

Mensagens de teclado e mouse também são processadas por um conjunto adicional de métodos substituíveis específicos para esses tipos de mensagens. Para obter mais informações, consulte Como a Entrada do Teclado Funciona e Como a Entrada do Mouse Funciona no Windows Forms.

Confira também