Discussão do artigo "Interfaces Gráficas II: Configuração dos manipuladores de eventos da Biblioteca (Capítulo 3)"

 

Novo artigo Interfaces Gráficas II: Configuração dos manipuladores de eventos da Biblioteca (Capítulo 3) foi publicado:

Os artigos anteriores contêm a implementação das classes para criar os componentes do menu principal. Agora, está na hora de olharmos com mais atenção os manipuladores de eventos nas classes base principais e dos controles criados. Nós também prestaremos uma atenção especial na gestão do estado do gráfico, dependendo da localização do cursor do mouse.

Depois que todas as mudanças foram realizadas, compile todos os arquivos e carregue o programa ao gráfico para realizar o teste. Agora, quando um elemento de menu independente sobre o formulário for clicado, o menu de contexto será exibido se este estava oculto antes e oculta se este estava aberto. Além disso, quando um menu de contexto está aberto, então a cor de fundo do elemento de menu será fixa, ou seja, ela não irá mudar novamente se o cursor do mouse estiver fora de sua área, como é exibido na imagem abaixo. 

Fig. 1. Teste de exibir e ocultar um menu de contexto.

Fig. 1. Teste de exibir e ocultar um menu de contexto.

Autor: Anatoli Kazharski

 

É realmente um bom trabalho.

No construtor do CContextMenu, adicionei a linha

CContextMenu::m_item_y_size=24;

para que 'm_item_y_size' tenha um valor padrão e a TestLibrary compile bem.

 
Otto Pauser:

É realmente um bom trabalho.

No construtor do CContextMenu, adicionei a linha

para que 'm_item_y_size' tenha um valor padrão e a TestLibrary compile bem.

Obrigado pela mensagem. Todas as correções serão feitas na próxima parte desta série.
 

Function void CContextMenu::ReceiveMessageFromMenuItem(const int id_item,const int index_item,const string message_item)

não envia a mensagem do estado da caixa de seleção se o item tiver esse tipo. Mas, em geral, a biblioteca é muito boa)