JInternalFrame

5 respostas
carioca

Como faço para colocar uma mensagem caso o usuario clicar no botao fechar em um JInternalFrame, tentei colocar um InternalFrameListener no JInternalFrame, a mensagem que coloquei aparece, só que ele fecha mesmo asim, será que existe uma maneira de impedir isso??

5 Respostas

lalgarve

Você usou o método setDefaultCloseOperation?

myInternalFrame.setDefaultCloseOperation(JInternalFrame.DO_NOTHING_ON_CLOSE);

Espero que isso resolva.

richardpeder

carioca…vc pode tentar usar um tipo de JOptionPane…o YES_NO_OPTION…quando vc clicar no botao fechar do JInternalFrame, ele ira dar a mensagem e, vc tratando ela, pode colocar, caso clique sim sai caso clique nao, nao sai…

Da uma olhada ai!!!

falow…

carioca

Entao… é isso mesmo que eu fiz. So o que me falta, é saber como posso impedir que o JInternalFrame seja fechado.

carioca

Valeu Leila, deu certo coloquei o seu codigo dentro o meu InternalFrameListener e funcionou…

Valeu

D

aproveitando

ola pessoal, preciso que ao clicar no [x] de um JInternalFrame ele encerre , mas não ta acontecendo isso… como faco pra chamar a interface adaptadora InternalFrameAdapter, da erro Sad
ou entaum, que encerre?? tem que ser pelo InternalFrameClosing, não?

public class Teste extends JInternalFrame {   
    public Teste() {
        super("CADASTRO",true,true,true,true);
        setDefaultCloseOperation(JInternalFrame.EXIT_ON_CLOSE);       

        this.addInternalFrameListener(new InternalFrameAdapter(){
            public void InternalFrameClosing (InternalFrameEvent evt) {
                   int result = JOptionPane.showConfirmDialog(null,"Deseja sair?","Sair",JOptionPane.YES_NO_OPTION);
                   if (result ==JOptionPane.YES_OPTION){           
                      this.setVisible(false);
                      this.dispose();           
                   } else {                                                                                                   this.setDefaultCloseOperation(JInternalFrame.DO_NOTHING_ON_CLOSE);
                   }     
             }
         });
     }
}
Criado 10 de abril de 2003
Ultima resposta 11 de nov. de 2004
Respostas 5
Participantes 4