Eu tenho um JFrame que chama um JDialog 1, porém eu preciso que esse JDialog 1 chame outro JDialog 2 ambos devem ser modais! Só que eu percebi que o JDialog1 não pode ser o pai de JDialog 2.
Eu consegui resolver esse problema da seguinte forma:
No JDialog2 eu criei um construtor sem argumentos, o código abaixo mostra como isso deve ser feito.
public dialog2(){
initComponents();
this.setModal(true);
}
No JDialog1 que é de onde queremos ativar o Jdialogo2 escreva o seguinte código:
dialog2 d2 = new dialog2();
d2.setVisible(true);
Pronto, dessa forma você conseguirá ativar um JDialog a partir de um outro JDialog.
Espero que tenha ajuda.
O negócio que eu percebi é que você não precisa setar o Component Pai (JFrame) do Jdialog (visto que aqui não é o pai no sentido de orientação à objetos), mas simplesmente setar se é modal ou não.
Pensava que tinha que setar em qual janela não poderia ser clicada, mas você não pode clicar em nenhuma atrás. =P