Passar lista para JInternalFrame

Fala galera, eu possui duas telas, a primeira que seria a pai e a segunda a filha, a primeira existe um metodo que dispara e chama a filha, eu queria q se a filha estivesse ativa o meu metodo nao fica-se dando new filha e criando mais uma na tela e sim so subistituindo as informações que tem na filha, como posso fazer isso?

Exemplificando : Na filha possui um Jtable, e gostaria qeu so atualiza-se a informações que existe na JTable e não criar uma nova tela e sobrepor ela mesma, alguem tem ideia? do que eu posso fazer em vez de dar um new?

Felipeti vc pode utilizar o padrão Singleton para obeter sempre a mesma instancia do JInternalFrame

seria algo do tipo

private static JFrameInternal meuJFrameInternal = null;  
  
  public synchronized static JFrameInternal getInstance() {  
        if (meuJFrameInternal == null) {  
            meuJFrameInternal = new JFrameInternal();  
        }  
        return meuJFrameInternal;  
    }  

ai no seu Jframe Pai, vc só chamaria o metodo getInstance() que ele iria retornar sempre a mesma instancia,
obs: não testei se ta funcionando direitinho :roll:

ou tambem pode dar uma olhada no observer e observator
http://www.devmedia.com.br/o-padrao-observer-e-swing/5719

Espero ter ajudado :lol:
Att.

Fala leo, então brother da uma olhada no meu metodo que eu chamo a outra tela…

    public void  iniciarAvisoAlter(ArrayList lista){
        ArrayList lista_ = new ArrayList();
        lista_ = lista;
       // if(this.aviso == null){
        aviso = new JFAvisoAlteracao(lista_,this);
        //this.setVisible(false);
        this.getParent();
        this.getParent().add(aviso);
        int lDesk = this.getWidth();  
        int aDesk = this.getHeight();  
        int lIFrame = aviso.getWidth();  
        int aIFrame = aviso.getHeight();
        aviso.setLocation( lDesk / 2 - lIFrame / 2, aDesk / 2 - aIFrame / 2 );
        aviso.setVisible(true);
        
       // } else {
           // aviso.
           // this.aviso(lista_,this);
       // }
    }

Nessa linha : aviso = new JFAvisoAlteracao(lista_,this);

eu chamo um novo, eu so queria que ele verifica-se, se fosse =! null, ele pega o mesmo e so manda a lista_ pra ele, entedeu?

Ficou claro a minha dúvida?

Não sei se seria a melhor pratica,
mas vc pode utilizar o metodo do singleton na sua JFrameInternal e lá sera feito o controle se esta é null ou não,
e passar como parametro uma List e chamar algum metodo no mesmo para listar novamente seu JTable,
vejo algo do tipo

//Class Principal
public void  iniciarAvisoAlter(ArrayList lista){  

    aviso = JFAvisoAlteracao.getInstance(lista);  //Retornará a instancia Singleton do JFrameInternal (SEMPRE A MESMA INSTANCIA)
    this.getParent();  
    this.getParent().add(aviso);
    int lDesk = this.getWidth();    
    int aDesk = this.getHeight();    
    int lIFrame = aviso.getWidth();    
    int aIFrame = aviso.getHeight();  
    aviso.setLocation( lDesk / 2 - lIFrame / 2, aDesk / 2 - aIFrame / 2 ); 
}  


//Class JFAvisoAlteracao
private static JFAvisoAlteracao meuJFrameInternal = null;    
    
  public synchronized static JFAvisoAlteracao getInstance(List lista) {    
        if (meuJFrameInternal == null) {    
            meuJFrameInternal = new JFAvisoAlteracao(lista);
        }else{
        metodoAtualizaJTable(lista);
        }
        return meuJFrameInternal;  
    }

  private JFAvisoAlteracao(lista){
        metodoAtualizaJTable(lista);
 }

obs:Tô sem IDE p/ implementar e testar :shock: