Guude!
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
Ein "System.exit(0)" veranlasst die JVM sich selbst zu beenden, insofern schließen sich beide Fenster. Wenn Du möchtest, dass sich nur das eine Fenster schließt, verwende die Methoden "dispose()" und "setVisible(false)":
public void windowClosing(WindowEvent event) {
event.getWindow().setVisible(false);
event.getWindow().dispose();
}
Etwas universeller kannst Du Deinen WindowAdapter gestalten, indem Du in seinem Konstruktor einen Boolean-Wert übergibst, der bestimmt, ob die JVM beendet werden soll:
import java.awt.event.*;
public class CFensterLauscher extends WindowAdapter {
private boolean exitSystem;
public WindowClosingAdapter(boolean exitSystem) {
this.exitSystem = exitSystem;
}
public void windowClosing(WindowEvent event) {
event.getWindow().setVisible(false);
event.getWindow().dispose();
if(exitSystem) {
System.exit(0);
}
}
}
Für das Fenster Deiner Hauptanwendung registrierst Du den WindowAdapter mit "addWindowListener(new CFensterLauscher(true))", für das zweite Fenster entsprechend mit "false".
LG ausm Hesseland
Lemmy
Wer seiner Frau gegenüber stets beteuert, dass DAS tatsächlich 30cm sind, darf sich nicht wundern, wenn sie nicht richtig einparken kann...