DISPOSE_ON_CLOSE

Nisbo

Bekanntes Mitglied
Servus,

ich möchte in meinem Programm ein JFrame öffnen auf dem ich dann die Settings zum Programm vornehmen kann. Während dieser Zeit soll man natürlich nichts im Hauptframe machen können.

Das Ganze funktioniert soweit auch
Java:
    private void openDBsettings() {
        setEnabled(false);
       
        JFrame frame = new JFrame("Settings");
        frame.setBounds(100, 100, 450, 300);
        frame.setAlwaysOnTop(true);
        frame.setVisible(true);
       
        frame.addWindowListener(new WindowAdapter(){
            public void windowClosing(WindowEvent e) {
                setEnabled(true);     
            }
        });
    }

Da ich Eclipse (MARS) nutze bin ich natürlich faul ^^ und möchte nicht alles selber schreiben was in dem Settings Frame steht. Aus diesem Grund habe ich eine neue Klasse erstellt so das ich da den GUI Editor nutzen kann.

Das Ganze öffne ich dann so
Java:
    private void openDBsettings() {
        setEnabled(false);
       
        FHEMconnectorSettings settingWindow = new FHEMconnectorSettings();
        settingWindow.setAlwaysOnTop(true);
        settingWindow.setVisible(true);

        settingWindow.addWindowListener(new WindowAdapter(){
            public void windowClosing(WindowEvent e) {
                setEnabled(true);     
            }
        });
    }

funktioniert auch, allerdings war dort im SettingFrame EXIT_ON_CLOSE aktiviert was mir dann auch den Hauptframe geschlossen hat. Diese Einstellung habe ich nun auf DISPOSE_ON_CLOSE geändert.

Die Frage lautet jetzt, ist das so richtig ? Oder muss man das Ganze anders lösen ?
 

Nuiton

Bekanntes Mitglied
Ein Programm mit mehreren JFrames ist eine schlechte Idee. Mehr dazu hier. Wie @Flown schon erwaehnte, kannst du einen JDialog benutzen. Falls du NetBeans benutzen moechtest, das JDialog findest du in der Swing-Palette. Das fuegst du einfach zu deinem Hauptfenster (JFrame) zu, und kannst es immernoch mithilfe vom GUI-Editor bearbeiten.
 

Tausendsassa

Aktives Mitglied
Also mit this.setVisible(false); kannst du dein Hauptfenster verstecken und wenn du ein Objekt zum anderen Frame übergibst kannst du es wieder anzeigen. aber die Idee von @Flown ist besser
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
H Swing JFrame mit JFXPanel NPE bei dispose() AWT, Swing, JavaFX & SWT 6
F Swing JDialog schließen - WindowListener bekommt dispose nicht mit AWT, Swing, JavaFX & SWT 0
kaoZ Swing JFrame lässt sich nicht über dispose() abbauen AWT, Swing, JavaFX & SWT 0
H Swing Keine Rückmeldung (freeze) bei setVisible(false) oder dispose() AWT, Swing, JavaFX & SWT 4
C AWT dispose() erzeugt nicht immer formfeed AWT, Swing, JavaFX & SWT 2
R JDialog dispose() wird zwei mal aufgerufen AWT, Swing, JavaFX & SWT 2
C JFileChooser - dispose() - Fenster schließ. Abbrechen Button AWT, Swing, JavaFX & SWT 6
R Verständnisfrage BufferStrategy: g.dispose() AWT, Swing, JavaFX & SWT 3
A Dispose und Swing-Fenster AWT, Swing, JavaFX & SWT 3
J Problem: neues Fenster bei dispose öffnen AWT, Swing, JavaFX & SWT 8
byte SWT: dispose() hier nötig? AWT, Swing, JavaFX & SWT 2
lin modaler JDialog mit #dispose() schliessen ? AWT, Swing, JavaFX & SWT 4
M Problem bei dispose() AWT, Swing, JavaFX & SWT 7
S Dispose() anstatt system.exit(0) AWT, Swing, JavaFX & SWT 8
Juelin Probleme bei Stage.close() AWT, Swing, JavaFX & SWT 23
G Kann man ein 2. JavaFX-Fenster auch beenden (exit) statt schließen (close) lassen? AWT, Swing, JavaFX & SWT 8
H Swing BufferedReader.close() hängt im SwingWorker AWT, Swing, JavaFX & SWT 1
J JTabbedPane: close Button Problem AWT, Swing, JavaFX & SWT 2
R JavaFX Stage.close() funktioniert nicht im jar-File AWT, Swing, JavaFX & SWT 2
A Mouse event und exit on close AWT, Swing, JavaFX & SWT 11
Luk10 Überschreiben von JFrame: Close AWT, Swing, JavaFX & SWT 4
C Swing Menubar Close, Minimize, Maximize button AWT, Swing, JavaFX & SWT 7
B AWT ueber close schliesen AWT, Swing, JavaFX & SWT 8
L Fenster inaktiv setzen / deaktivieren (unable to close window) AWT, Swing, JavaFX & SWT 16
P JDialog Close-Button inaktiv machen AWT, Swing, JavaFX & SWT 1
F JFrame Close Problem AWT, Swing, JavaFX & SWT 1
M close methode AWT, Swing, JavaFX & SWT 3
hdi non-default close operation bei JDialog AWT, Swing, JavaFX & SWT 2
S Fensterbuttons (min / max / close) ausblenden AWT, Swing, JavaFX & SWT 5
G Listener fuer Window Close AWT, Swing, JavaFX & SWT 2
thE_29 Modaler Dialog - close on not focus AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen

Neue Themen


Oben