Como adicionar um ActionListener à operação de encerramento da aplicaçao?

6 respostas
D

Boas. eu quero que o meu editor de texto pergunte se quero gravar o ficheiro quando eu fecho a minh aplicação. como faço isso? ha alguma maneira de por um actionlistener nessa operacao de encerramento?

6 Respostas

Gobain

Olá,
Na sua JFrame adiciona um WindowListener ou um WindowAdapter…

addWindowListener(new WindowAdapter() {
	public void windowClosed(WindowEvent evt) {
				
	}

	public void windowClosing(WindowEvent evt) {
				
	}
});

Daí vc adiciona o q quiser ali dentro… :thumbup:

D

ok. eu estou a usar o windowClosing () para antes de fechar perguntar atraves de um optionDialog (com SIM, NAO e CANCELAR) se quer gravar o ficheiro… mas como faço para se o ususario clicar CANCELAR, ou seja para que tudo volte como estava interrompendo o encerramento?

W
bom nao sei como vc ta resgatando a informação do click de botao mas seria algo

seria algo bem simples dentro do metodo windowClosing como

if (!cancelou) { // se nao cancelou vou me preucupar em tratar as outras opcoes

if (sim)

//codigo

if(nao)

//codigo

}

// ou seja se cancelar ele nao faz nada

D

pois… ele nao faz mais nada, ou seja, continua com o que foi interrompido, ou seja, continua com a operação de encerramento. o que eu qeria era que ele voltasse mesmo atras antes de ter pedido para encerrar…

D

ja percebi como é.

tenho que definir o DefaultCloseOperation para DO_NOTHING_ON_CLOSING e depois

if (nao)

{

Window window = ((Window)evt.getSource ());

window.dispose ();

}
mchiareli

o swing application framework já faz isso…pq nao da uma olhada…

https://appframework.dev.java.net/
http://java.sun.com/developer/technicalArticles/javase/swingappfr/

Criado 13 de julho de 2007
Ultima resposta 17 de jul. de 2007
Respostas 6
Participantes 4