[RESOLVIDO] JDialog1 chamando outro JDialog2,apartir JDialog1

Criei um JDialog1 e pretendo chamar outro JDialog2, pelo botao (btnNovo) que se encontra no JDialog1 ? ajuda-me porfavor

2 curtidas

tens razão só novato,ja actualizei,preciso de ajuda.

JDialog2 dialog2 = new JDialog2(new JFrame(), true);

O parâmetro booleano (true ou false) resumidamente significa que se for true, o software vai dar atenção apenas à uma janela, fazendo com que o resto fique bloqueado. Enquanto vc não fechar esse dialog2 as outras janelas ficam “travadas”.

2 curtidas

O ideal seria você especificar o seu código para entendermos e adaptarmos a resposta para sua situação, mas imagino que seu código poderia ficar dessa forma:

btnNovo.addActionListener((ActionListener) new ActionListener() {
public void actionPerformed(ActionEvent e) {
JDialog dialog = new JDialog();
dialog.add(new JLabel(“texto do JDialog”));
dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
dialog.setTitle(“Título”);
dialog.setSize(300, 100);
dialog.setVisible(true);
}
});

Espero que isso resolva, e é sempre bom você colocar exemplos do seu código para melhor compreensão.

1 curtida

Filipecalda Obrigado por responderes as minhas dúvidas…

Orichimaru ,
esta instância que é JDialog2 dialog2 = new JDialog2(new JFrame(), true);
a minha dúvida é o seguinte : "jDialog1 tem um botão e este botão ainda não tem código ,a ideia é que este botão chama outro jDialog2…

antes eu tinha criado dois 2 jframe , chamei o outro jframe 2 apartir do jFrame 1, tinha usado a seguinte instância jframe2 "renomei produto " e chamei desta forma produto pr = new produto ();
funcionou a vontade.

Mas quando troquei jframe e usei outro form jDialgo não está aceitar na instância.
Produto pr =new produto (null, true

Filipecaldas,
esta instância que é JDialog2 dialog2 = new JDialog2(new JFrame(), true);
a minha dúvida é o seguinte : "jDialog1 tem um botão e este botão ainda não tem código ,a ideia é que este botão chama outro jDialog2…

antes eu tinha criado dois 2 jframe , chamei o outro jframe 2 apartir do jFrame 1, tinha usado a seguinte instância jframe2 "renomei produto " e chamei desta forma produto pr = new produto ();
setvisible (True) funcionou bem .

Mas quando troquei jframe e usei outro form que é o jDialgo não está aceitar na instância.
Produto pr =new produto (this , true); da erro só aceita (null , true);
SetVisible(true);
Não faz nada. Ou seja não chama!

Isso acontece pq o construtor do JDialog só aceita o JFrame como padrão, olha

public AlgumaCoisa(JFrame parent, boolean xx){
//super.......
}

SE vc estar como null, não vai aparecer nada mesmo. Vc pode fazer um construtor pra aceitar o JDialog:

public AlgumaCoisa(JDialog parent, boolean xxx){
//ai aqui tem aquele super(........);
}

E depois de vc criar esse novo construtor, vai precisar criar um construtor vazio, ou seja

private AlgumaCoisa(JFrame p, boolean xx){
}

Ou vc pode fazer igual eu mandei ali primeiro, chamar assim

AlgumaCoisa coisa = new AlgumaCoisa(new JFrame, true);
coisa.setVisible(true);
2 curtidas

Obrigado pela ajuda vou experimentar agora!
desde já agradeço :clap:

1 curtida

Obrigadoooooooooo funcionouuu
orochimaru