Fechar um JDialog que foi criado em outra classe

[color=darkblue][size=13]Seguinte, por mais que existam vários tópicos sobre este assunto, não consegui aplicá-lo no meu caso, irei postar abaixo o código:
(Obs) Há classes que estão em pacotes diferentes.
[/size][/color]

[color=red]Classe Dialog que cria JDialogs:[/color]

package dialogs; public class Dialog extends JDialog{ private static final long serialVersionUID = 1L; //Construtor public Dialog(String name, JPanel pane){ setTitle(name); setSize(pane.getSize()); setLocationRelativeTo(null); setDefaultCloseOperation(DISPOSE_ON_CLOSE); setContentPane(pane); setModal(true); setResizable(false); setVisible(true); } }

[color=red]Classe que cria o JDialog:[/color]

package listeners; public class MenuItemIncluir implements ActionListener{ public void actionPerformed(ActionEvent evt){ JPanel incluirPanel = new IncluirPane(); //Este é o JDialog que desejo fechar new Dialog("Novo Produto ", incluirPanel); } }
[color=red]Classe por onde desejo fechá-lo:
[/color]

package listeners; public class BtnIncluirProduto implements ActionListener{ public void actionPerformed (ActionEvent evt){ //quero fechar o JDialog por aqui } }
[size=13][color=darkblue]A questão é, como isso seria possível? [/color][/size]

tente enviar seu JDialog para o form q deseja q o feche.

ex.

public class MeuDialog extends JDialog{
      private DialogQueroFechar dialog;
      private btnFecharDialog fecharDialog;
      
      public void setDialogQueroFechar(DialogQueroFechar dialog){
            this.dialog = dialog;
      }
      
      private void btnFecharDialogActionPerformed(ActionEvent e){
           this.dialog.dispose();
      }
      
}

public class DialogQueroFechar extends JDialog{
        MeuDialog md = new MeuDialog(null, true);
        md.setDialogQueroFechar(this);
        md.setVisible();
}

é mais ou menos isso, escrevi aqui msm sem usar IDE entaum nem testei, mas a idéia é essa assim como para abrir dados de um jdialog/jframe etc…Um para outro.

t+ e boa sorte.

Desculpe a demora para responder, fiz alguns testes, mas no meu caso, só consegui fechá-lo colocando-o como “static”.

Ficando assim:

[code]public class MenuItemIncluir extends JDialog implements ActionListener{
private static final long serialVersionUID = 1L;
private static JDialog dialogIncluir = null;
public void actionPerformed(ActionEvent evt){
JPanel incluirPanel = new IncluirPane();
dialogIncluir = new JDialog();
dialogIncluir.setContentPane(incluirPanel);
dialogIncluir.setTitle(“Novo Produto”);
dialogIncluir.setSize(incluirPanel.getSize());
dialogIncluir.setLocationRelativeTo(null);
dialogIncluir.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
dialogIncluir.setModal(true);
dialogIncluir.setResizable(false);
dialogIncluir.setVisible(true);
}
public static void Fechar(){
dialogIncluir.dispose();
}

}[/code]