Problema com listener

4 respostas
leonardobhbr

Boa tarde galera,

Estou com um problema e não encontro nenhuma solução, para o mesmo.
Estou criando um componente que é um

Ao clicar no Button ele verifica se a calculadora (pequeno JDialog) estiver aberta ele fecha se não ele abre a mesma até aqui tudo bem.

o problema é q em diversas situações eu tenho q fechar ela Ex: (ao redimensionar a tela principal, o usuário clicar em algum componente) por isso coloquei o evento

para fechar ela caso teja visible.

Logo se a calculadora estiver aberta e o usuario clicar no botão ele chama o listener windowActivated
fechando a calculadora e depois chama actionPerformed como a calculadora não está visivel mais ele abre ela novamente.

Alguem compreendeu o meu problema?

4 Respostas

walissongpi

não. Coloque seu código ou prints para podermos analisar.

leonardobhbr

Obrigado walissongpi por responder como e meio grande o codigo segue em anexo o projeto so pra vc ter ideia a grande questao e como eu posso fazer para ao clicar no botao abrir e fechar a calculadora e se clicar em qualquer outro componente fechar a tela tambem

walissongpi

leonardobhbr:
Obrigado walissongpi por responder como e meio grande o codigo segue em anexo o projeto so pra vc ter ideia a grande questao e como eu posso fazer para ao clicar no botao abrir e fechar a calculadora e se clicar em qualquer outro componente fechar a tela tambem

Ainda está estranho pra mim, mas acho q estou entendendo.
O botãozinho que fica ao lado do textfield serve para abrir e fechar a calculadora?
Os dois eventos estão sendo disparados em seu código.

leonardobhbr

Obrigado walissongpi mais uma vez.

E sobre o botão é isso mesmo ele abiria e fecharia a calculadora so que como eu falei se o usuario trocar o foco, redimensionar a tela, maximizar, minimizar ela tem q fechar automaticamente.

O meu grande problema e q se ela tiver aberta e eo clicar no botão chama o windowActivated antes do actionPerform do botão entao ele fecha a tela e a soltar o click do botão ele abre de novo e não poderia.

Ele so pode abrir se ao clicar no botão a acalculadora não estiver aberta.

Segue uma demostração

Criado 13 de maio de 2010
Ultima resposta 14 de mai. de 2010
Respostas 4
Participantes 2