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??
JInternalFrame
5 Respostas
Você usou o método setDefaultCloseOperation?
myInternalFrame.setDefaultCloseOperation(JInternalFrame.DO_NOTHING_ON_CLOSE);
Espero que isso resolva.
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…
Entao… é isso mesmo que eu fiz. So o que me falta, é saber como posso impedir que o JInternalFrame seja fechado.
Valeu Leila, deu certo coloquei o seu codigo dentro o meu InternalFrameListener e funcionou…
Valeu
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);
}
}
});
}
}