Hallo zusammen,
ich habe in einer Applikation statt des WindowListeners den WindowAdapter benutzt, da ich nur eine WindowListener-Methode (windowClosing) brauche.
In dieser soll die Methode speichern() aufgerufen werden, damit der Text aus der Anwendung in eine bestimmte Datei abgespeichert wird. Genau das funktioniert aber nicht. Wobei es schon so ist, daß die Methode speichern() durch den WindowAdapter aufgerufen wird. Aber der Text wird dann eben nicht abgespeichert.
Was mich wundert: ich hatte in dieser Applikation zuvor den WindowListener eingebaut, dasselbe also dort mit der windowClosing()-Methode gemacht und es klappte! So, what’s wrong?
Mein WindowAdapter, der in einer inneren Klasse der Klasse AnwendungsFenster steht:
class FensterLauscher extends WindowAdapter
{
private InhaltNEU inhaltNEU;
public FensterLauscher()
{
inhaltNEU = new InhaltNEU();
}
public void windowClosing(WindowEvent e)
{
int antwort = JOptionPane.showConfirmDialog(null, „Einkaufsliste schliessen?“,
„Einkaufsliste beenden“, JOptionPane.YES_NO_OPTION);
if(antwort == JOptionPane.YES_OPTION)
{
inhaltNEU.speichern();
System.exit(0);
}
}// end-windowClosing
}// end-class FensterLauscher
Die Methode speichern(), welche in einer Klasse AnwendungsInhalt(hier genau: InhaltNEU) steht:
public void speichern()
{
try
{
fw = new FileWriter(„D:\JavaDateien\ekListe.txt“);
bw = new BufferedWriter(fw);
int i=0;
for(i = 0; i