Ich habe einen Haupt-JFrame, der alle Arten von Panels für verschiedene Funktionen enthält und Leute können Dinge in ihnen berechnen. Ich möchte einen neuen JFrame öffnen, wenn der Benutzer die erste Schaltfläche zum Berechnen betätigt und als Ausgabefenster dient (Ausgabefenster von Simlar zu SPSS, wenn Sie damit vertraut sind).
Der neue JFrame wird komplett separat sein und eine eigene Menüleiste haben ... Ein einfacher JDialog ist nicht der richtige Weg.
JFrame frame = new JFrame(
); und frame.setVisible(true);
Ich möchte einen neuen JFrame öffnen, wenn der Benutzer die erste Berechnung durchführt Schaltfläche und dienen als Ausgabefenster (Simlar to SPSS Ausgabefenster wenn Sie sind mit ihnen vertraut).
tun Sie das nicht, erstellen Sie nur zwei JFrames , 2. JFrame
mit getContentPane.removeAll()
, für andere Aktionen mit JButton
dann wird der gesamte Lebenszyklus nur ungefähr setVisible(true)
/ setVisible(false)
ändern Sie DefaultCloseOperations
in HIDE_ON_CLOSE
Der neue JFrame wird komplett separat sein und ein eigenes Menü haben Bar. Ein einfacher JDialog ist nicht der richtige Weg.
JDialog
, nur eine Schaltfläche in Toolbar
im Vergleich mit drei Schaltflächen in JFrame
, simple stimme nicht zu, Ausgabefenster (Simlar to SPSS Ausgabefenster, wenn Sie mit sie).
SwingWorker
oder Runnable#Thread
(erforderlicher Zeilenumbruch in invokeLater
), um den Wert für JComponents zu erhalten, die in JDialog abgelegt werden. Wenn alle Änderungen vorgenommen wurden, rufen Sie JDialog.setVisible(true)
in invokeLater()
auf