Pergunta

Eu estou usando um controle NotifyIcon em uma das formas meu filho (modais) e ele está funcionando bem. Aparecendo dicas de balão como esperado, manipulação de eventos de mouse etc ... No entanto, não desaparecem quando eu esperaria que ele. Especificamente, quando eu sair do formulário filho e o pai está de volta no controle do ícone ainda permanece. É de dica de ferramenta é acessível por isso é muito "vivo" como se fosse.

Quando eu saia meu aplicativo como um todo a imagem ainda permanece até o ponto que eu passe o cursor sobre ele. Uma vez moused ele desaparece.

Como posso obtê-lo a se comportar normalmente? Ok normalmente é uma palavra ruim: -0 Como posso fazê-lo desaparecer quando a forma que o criou desaparece

?

Alguém poderia explicar o que está causando isso também, eu pensei .net era para limpar depois de si? ??

G

EDIT: Se eu chamar o método Dispose na forma fechada evernt isso funciona, mas eu realmente tenho que fazer isso? G

Foi útil?

Solução

Aqui está um pensamento, não sei se isso vai fazer a diferença, mas você está chamando Dispose () na NotifyIcon quando os fecha formulário filho?

EDIT: Só vi sua edição, sim, eu não estou surpreso que isso ajuda, e sim, você deve fazê-lo. Debaixo das cobertas algo está usando algum não gerenciado recursos, e você precisa liberá-lo. Geralmente, qualquer coisa em seu aplicativo que implementa IDisposable que você está usando, faça um favor e eliminá-lo.

Outras dicas

Icon.Visible = false

também iria funcionar. De qualquer forma, Dispose ainda deve ser chamado para descartar o identificador do Windows.

Este pergunta é semelhante.

Se você está bem com novas instâncias do programa limpando-a bandeja do sistema em vez de tentar a limpeza garantia sobre qualquer tipo de desligamento, o seguinte simula uma limpeza bandeja notificação. Ele usa uma solução SendMessage que simula uma limpeza pelo usuário-mouse sobre que não envolve a necessidade de realmente mover o cursor do usuário ao redor.

Note que no Windows 7 máquinas o nome Notification Area deve ser substituído por User Promoted Notification Area.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top