Lösung für WindowListener gesucht

d3x1984

Grünschnabel
Hi,

also für Menüpunkte kann man z.B.

Code:
private static final String SAVE_COMMAND        = "SAVE";
........
private final JMenuItem     saveMenuItem        = new JMenuItem("Save Settings");
.............
  fileMenu.add(saveMenuItem);
......

        saveMenuItem.setAccelerator(KeyStroke.getKeyStroke('S', InputEvent.CTRL_DOWN_MASK));
        saveMenuItem.setActionCommand(SAVE_COMMAND);
        saveMenuItem.addActionListener(actionListener);
.....
 private class MainWindowActionListener implements ActionListener {
    	
        private MainFrame   mainFrame;
 
        public MainWindowActionListener(MainFrame frame) {
        	
            this.mainFrame = frame;
        }
 
        public void actionPerformed(ActionEvent e) {
        	
            if (e.getActionCommand().equals(QUIT_COMMAND)) {
            	
                new QuitDialog(mainFrame,"Quit",true);
            } // hier der rest hin

anwenden...

geht das auch mit nem WindowListener?

ich möchte das mein "QuitDialog" nach de klicken auf X geöffnet wird.
gibts aber ne möglichkeit das ähnlich zu lösen wie oben gezeigt?
 
Zuletzt bearbeitet:
Klar.
Würde den Quit-Aufruf in ne Methode packen, um ihm auch aus den File-Menu heraus aufzurufen. Kannst aber auch die jeweilige Methode des Listeners verwenden, auch wenn ich es nicht so schön finde, da der Name der Methode dabei nicht wirklich etwas über ihren Inhalt aussagt.
Dann die defaultCloseOperation auf JFrame.DO_NOTHING_ON_CLOSE setzen und den Listener installieren. Dann nur noch windowClosing(WindowEvent) oder windowsClosed(WindowEvent) überschreiben. (Bin mir nicht sicher, denke aber eher ersteres.)
 
Zurück