[quote=crixtiano]Em minha aplicação eu tenho duas janelas JDialog, que estou definindo como “Dialogo1” e “Dialogo2”.
As duas abrem sem problemas, quando solicitadas individualmente.
Ambos, Dialogo1 e Dialogo2 usam “setModal(true)”
O problema é que eu não consigo abrir Dialogo2 quando Dialogo1. Em Dialogo1 eu tenho um botão que inicia Dialogo2. Mas quando clicado, Dialogo2 nunca aparece. Se eu fizer Dialogo1.setModal(false), Dialogo2 abre.
Pergunta: como fazer para abrir Dialogo2 dentro de Dialogo1 tendo as duas janelas de dialogo como Modal=true?
Cristiano[/quote]
Boa noite Cristiano,
Esse código cria um objeto que instancia um JDialog. Observe os parâmetros que são necessários para o outro JDialog ser instanciado (linha 8 ).
//Botão ok
ok = new JButton ("Ok");
ok.setFont(new Font("Arial",Font.PLAIN,12));
ok.setBounds (110,170,100,25);
tela.add(ok);
ok.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
janela = new Inicial(null,"Resultado da Pesquisa - Clientes",true);
janela.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
janela.setVisible(true);
dispose();
}});
Agora segue o código do JDialog instanciado.
public class Inicial extends JDialog{
public Inicial(Frame owner,String title,boolean modal){
super(owner,title,modal);
setSize(1024,500);
setLocationRelativeTo(null);
...
Funciona perfeitamente! Quanto ao caso do JDialog2 não aparecer é só você setar = JDialog2.setVisible(true) quando estiver instanciando ele, como exemplo do primeiro código (linha 10).
Qualquer coisa é só postar seu código que te dou uma força brother.
Flws.