我有一个主JFrame,其中包含各种面板,用于不同的功能和人们可以在其中计算事物。当用户点击第一个计算按钮时,我想打开一个新的JFrame,并作为输出窗口(如果您熟悉SPSS输出窗口,则类似)。
新的JFrame将是完全独立的,将有自己的菜单栏...这里不适合使用简单的JDialog。
新的JFrame将是完全独立的,将有自己的菜单栏...这里不适合使用简单的JDialog。
JFrame frame = new JFrame()
和frame.setVisible(true)
的答案持不同意见当用户点击第一个计算按钮时,我想打开一个新的JFrame,并作为输出窗口(如果您熟悉SPSS输出窗口,则类似于它们)。
不要这样做,只创建两个JFrames, 重用第二个。通过使用getContentPane.removeAll()
,为来自JButton
的其他操作使用JFrame
然后所有的生命周期都将只涉及setVisible(true)
/ setVisible(false)
将DefaultCloseOperations
更改为HIDE_ON_CLOSE
新的JFrame将完全独立,并拥有自己的菜单栏。简单的JDialog不适用于此处。
JDialog
有什么问题,与JFrame
相比,在Toolbar
中只有一个按钮,而JFrame
有三个按钮,很简单地不同意。输出窗口(如果您熟悉SPSS输出窗口)。
JDialog
中的JComponents获取值,使用SwingWorker
或Runnable#Thread
(需要包装到invokeLater
中),如果所有更改都完成,则调用invokeLater()
包装的JDialog.setVisible(true)
JFrame newFrame = new JFrame();
newFrame.setVisible(true);
JFrame
不是一个好的做法,这就是为什么我们有JDialog
的原因。 - Eng.FouadJFrame
。 - Eng.FouadJFrame frame = new JFrame();
frame.setVisible(true);
我使用了代码 JFrame frame = new JFrame();
frame.setVisible(true);
。这段代码只是创建了一个空白窗口。
JFrame
可见即可..!!! - Vishal K