此問題源自於使用者遇到的問題,其中只有GUI 的頂部元件程式執行階段可見。使用者的程式碼嘗試在框架中顯示多個面板和文字字段,但最初只有一個元件可見。這種差異導致他們懷疑其他元素被遮蔽。
檢查程式碼後,很明顯問題出在 BorderLayout JFrame 的內容窗格。 BorderLayout 只允許一個元件佔據中心位置,這是所有元件最初放置的位置。
要解決此問題,使用者應在將每個元件新增至 BorderLayout 時為其指定特定的限制。以下程式碼片段示範了這種方法:
f.add(top, BorderLayout.PAGE_START); f.add(mid); f.add(bot, BorderLayout.PAGE_END);
此程式碼將頂部面板放置在框架的開頭,使中間和底部面板不受約束。因此,它們將垂直顯示在頂部面板下方。
除了解決可見性問題外,使用者還表示希望增強程式的效能。這裡有一些額外的建議:
透過實現這些更改,程式不僅會按預期顯示所有組件,而且會在使用者按下關閉時更有效率地運行並無縫關閉按鈕。
以上是儘管添加了多個元件,為什麼我的 JFrame 中只顯示一個元件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!