簡體   English   中英

打開一個新的 JFrame

[英]Open a new JFrame

我有一個主 JFrame,里面有各種各樣的面板,用於不同的功能,人們可以在其中計算東西。 我想在用戶點擊第一個計算按鈕時打開一個新的 JFrame 並用作輸出窗口(如果您熟悉它們,則類似於 SPSS 輸出窗口)。

New JFrame 將是完全獨立的,並且將擁有自己的菜單欄......一個簡單的 JDialog 不是這里的方法。

  • 無法抗拒,簡單不同意答案JFrame frame = new JFrame( ); frame.setVisible(true);

我想在用戶點擊第一個計算按鈕時打開一個新的 JFrame 並用作輸出窗口(如果您熟悉它們,則類似於 SPSS 輸出窗口)。

  • 不要那樣做,只創建兩個 JFrames ,重用第二個。 JFrame使用getContentPane.removeAll() ,用於來自JButton其他操作

  • 那么所有生命周期都將僅與setVisible(true) / setVisible(false)

  • DefaultCloseOperations更改為HIDE_ON_CLOSE

New JFrame 將是完全獨立的,並將擁有自己的菜單欄。 一個簡單的 JDialog 不是這里的方法。

  • JDialog什么問題,與JFrame三個按鈕相比, Toolbar中只有一個按鈕,簡單不同意,

輸出窗口(如果您熟悉它們,則類似於 SPSS 輸出窗口)。

  • 使用SwingWorkerRunnable#Thread (需要包裝到invokeLater )獲取放置到 JDialog 中的 JComponent 的值,如果所有更改都完成,調用JDialog.setVisible(true)包裝到invokeLater()
JFrame newFrame = new JFrame();
newFrame.setVisible(true);

切勿在一個 Swing 應用程序中使用多個JFrame JDialog用於額外的窗口。

請參閱使用多個 JFrame,好的/壞的做法? .

我可能誤解了你的問題,但

JFrame frame = new JFrame();
frame.setVisible(true);

我使用了代碼JFrame frame = new JFrame(); frame.setVisible(true); JFrame frame = new JFrame(); frame.setVisible(true); . 這段代碼只是做空窗口。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM