Instanciar JDialog através de um JPanel

Estou criando um software comercial, e faço uso do CardLayout, tenho um menu que faz o painel trocar por um JPanel, criado separadamente do JFrame, e dentro dele tem um botão que deveria criar um JDialog, mas o netbeans da erro. Vou colocar a imagem com o trecho do código:

Você vai ter que fazer umas modificações no método construtor do seu jdialog pois o método padrão é para aceitar um jframe como pai.

1.Instancie um objeto na classe do seu jdialog: public static telapai objeto;

2.Faça o método construtor do seu jdialog assim:

public meuJDialog(telapai parent, boolean modal) {
      this.objeto = parent;
      this.setModal(modal);
      initComponents();
}

3.No método principal do seu jdialog vai ter a linha desta forma:
meuJDialog dialog = new meuJDialog(new javax.swing.JFrame() , true);
você troca por:
meuJDialog dialog = new meuJDialog(objeto, true);

4.Agora na classe da sua tela pai instancie um objeto do seu jdialog:
public static meuJDialog objeto;

5.E por fim, na ação do seu botão coloque:
objeto=new meuJDialog(this, true);
objeto.setVisible(true);

Muito Obrigado, deu certo aqui, vlw

1 curtida