Compartilhar via


Definindo um manipulador de mensagens para uma mensagem refletida

Depois de criar uma nova classe de controle de MFC, você pode definir manipuladores de mensagem para ela. Os manipuladores de mensagem refletidas permitem que a sua classe de controle trata suas próprias mensagens antes que a mensagem foi recebida pelo pai. Você pode usar a função MFC CWnd::SendMessage para enviar mensagens do controle para uma janela pai.

Com essa funcionalidade você pode, por exemplo, para criar uma caixa de listagem que se redesenhasse em vez de utilizar a janela pai para fazer isso (proprietário desenhado). Para obter mais informações sobre mensagens refletidas, consulte A manipulação de mensagens refletido.

Para criar Controle ActiveX com a mesma funcionalidade, você deve criar um projeto do controle ActiveX.

Dica

Você não pode adicionar uma mensagem refletida (OCM_Message) para um controle ActiveX usando a janela Propriedades, como descrito abaixo.Você deve adicionar essas mensagens manualmente.

Para definir um manipulador de mensagem para uma mensagem refletida na janela Propriedades

  1. Adicionar um controle, como uma lista, um controle de rebar, uma barra de ferramentas, ou um controle de árvore, ao seu projeto MFC.

  2. Na exibição da classe, clique no nome da sua classe do controle.

  3. Em Janela Propriedades, o nome da classe do controle é exibido na lista de Nome da classe .

  4. Clique no botão de Mensagens para exibir as mensagens do windows disponíveis para adicionar ao controle.

  5. Percorra a lista de mensagens na janela Propriedades até ver o título Refletido. Como alternativa, clique no botão de Categorias e recolher a exibição para ver a direção de Refletido .

  6. Selecione a mensagem refletida para o qual você deseja definir um manipulador. As mensagens são refletidas marcadas com um sinal de igual (=).

  7. Clique na célula na coluna esquerda na janela Propriedades para exibir o nome do manipulador sugerido como <add>HandlerName. (Por exemplo, o manipulador de mensagens de =WM_CTLCOLOR sugere <adiciona>CtlColor).

  8. Clique no nome sugerido para aceitar. O manipulador é adicionado ao seu projeto.

    Os nomes de manipulador de mensagens que você adicionou aparecem na coluna direita da janela refletida de mensagens.

  9. Para editar ou excluir um manipulador de mensagens, repita as etapas 4 a 7. Clique na célula que contém o nome do manipulador para editar ou excluir e clique na tarefa apropriada.

Consulte também

Tarefas

Mapeando mensagens para funções

Adicionando uma função de membro (Visual C++)

Adicionando uma variável de membro (Visual C++)

Substituindo uma função virtual (Visual C++)

Referência

Navegando na estrutura da classe (Visual C++)

Conceitos

Adicionando funcionalidade com assistentes de código

Adicionando uma classe (Visual C++)

Adicionando um manipulador de mensagens do MFC