Interpretando a entrada do usuário por meio de uma exibição

Outras funções de membro do identificador de exibição e interpretam todas as entradas de usuário. Normalmente, você definirá funções de membro do manipulador de mensagens em sua classe de exibição para processar:

  • Mensagens do Windows geradas por ações de mouse e teclado.

  • Comandos de menus, botões da barra de ferramentas e teclas de acelerador.

Essas funções membro do manipulador de mensagens interpretam as seguintes ações como entrada, seleção ou edição de dados, incluindo a movimentação de dados de e para a Área de Transferência:

  • Movimentos e cliques do mouse, arraste e cliques duplos

  • Pressionamentos de tecla

  • Comandos de menu

As mensagens do Windows que seu modo de exibição manipula dependem das necessidades do aplicativo.

Tópicos de Manipulação e Mapeamento de Mensagens explica como atribuir itens de menu e outros objetos de interface do usuário a comandos e como associar os comandos a funções de manipulador. Tópicos de Mapeamento e Tratamento de Mensagens também explica como o MFC roteia comandos e envia mensagens padrão do Windows para os objetos que contêm manipuladores para eles.

Por exemplo, seu aplicativo pode precisar implementar o desenho direto do mouse no modo de exibição. O exemplo de Rabisco mostra como lidar com as mensagens WM_LBUTTONDOWN, WM_MOUSEMOVE e WM_LBUTTONUP, respectivamente, para começar, continuar e encerrar o desenho de um segmento de linha. Por outro lado, talvez às vezes você precise interpretar um clique do mouse em seu modo de exibição como uma seleção. A função de manipulador OnLButtonDown do modo de exibição determinaria se o usuário estava desenhando ou selecionando. Se ele estava selecionando, o manipulador determinará se o clique estava dentro dos limites de algum objeto no modo de exibição e, se for o caso, alterará a exibição para mostrar o objeto como selecionado.

Seu modo de exibição também pode manipular determinados comandos de menu, como aqueles do menu Editar para cortar, copiar, colar ou excluir dados selecionados usando a Área de Transferência. Esse manipulador chamaria algumas das funções de membro relacionadas à Área de Transferência da classe CWnd para transferir um item de dados selecionado para ou da Área de Transferência.

Confira também

Usando exibições