Tenho um JFrame com um painel e um botão. Quando clico no botão ele abre um JDialog com um painel e outros dois botões. Ao clicar em qualquer um desses dois botões é aberto um novo JDialog com um painel e uma caixa de texto.
O problema é que quando chamo o método dispose() nesse último JDialog (o da caixinha de texto), o JDialog anterior (o que tem os dois botões) aparece normal na tela mas o “foco” volta para o JFrame. Gostaria que o foco voltasse ao JDialog anterior.
Pesquisei muito, fiz várias tentativas mas nenhuma delas resolveu. Nem setFocus(), nem setAlways, …
Alguma idéia? :idea:
Obrigada, aguardarei pela ajuda. Até +…
Então, com modal true ele volta com o foco corretamente. Mas, se naquele último JDialog for chamar um terceiro JDialog, ele não abre.
Existe um número limitado de JDialog com modal true. :roll:
Obrigada pela ajuda… tem mais alguma idéia? :idea:
Curioso com o que vc falou…resolvir testar esse limite do JDialog.
crie um JFrame para chamar o primeiro JDialog e mais 5 JDialogs.
então coloquei os 6 Jdiloags se chamando em círculo.
todos eles modal.
acho que cheguei a abrir uns 20 JDialog’s… todos modais.
Olá… acabei de fazer o mesmo que você agora para testar, só troquei o JDialog que estava chamando por outro e consegui passar de três JDialog`s. Até aí OK, sem problemas. Obrigada
Mas quando chamo o dipose() do JDialog atual, o foco não retorna, por exemplo, a caixa de texto da JDialog anterior… mesmo com modal true. E agora?