我正在開發一個Java桌面應用程序,有時候我的jmenubar會顯示出來,有時它不會顯示。當它不是整個程序凍結,我必須殺死它。Java swing JMenuBar有時不顯示
我正在創建它並將其設置在框架的構造函數中。
代碼:
// Load any settings we might have made from last time.
loadSettings();
menuBar = createMenuBar();
setJMenuBar(menuBar);
// re-evaluate and re-layout things, since they've been changed.
validate();
addWindowListener(this);
正如你可以在我的代碼中看到,我添加了一個validate()調用,希望這將有助於。它的確如此,但問題仍然不時發生。
在此先感謝您的幫助!
請嘗試發佈[SSCCE](http://pscode.org/sscce.html)。 – Howard
出於興趣,有人可以澄清爲什麼每個人似乎都會在他們的Swing示例中調用'validate()'嗎?我有一個整體的Swing應用程序,我寫了一次,並沒有調用它...是必要的還是不好的/好的設計實踐? – aardvarkk
@aardvarkk - 我想說在大多數情況下,沒有必要這樣做。如果您使用佈局管理器,它應該自動處理大多數情況。一般來說,包括它的例子的擴散是(恕我直言)不理解揮杆漆系統如何真正起作用的症狀。 – wolfcastle