在確信(“受過教育”)Mac上的Swing應用程序確實看起來是本地的之后,我試圖使我的外觀看起來盡可能本地化。一切看起來都很不錯,但是當我按command+ Q或從菜單中進行操作時,我windowStateChanged(WindowEvent e)沒有在主JFrame上觸發(如果我以任何其他方式退出,則確實會觸發)。我如何應對真正的蘋果退出?
3 回答

蠱毒傳說
TA貢獻1895條經驗 獲得超3個贊
票數最高的答案是極好的,但這只是為了填寫“最佳方式”:
System.setProperty("apple.eawt.quitStrategy", "CLOSE_ALL_WINDOWS");
這將觸發標準的窗口關閉回調事件,該事件對于可移植代碼應該非常有效。
作為下面討論的結果,似乎很重要的一點是真正在應用程序的早期進行此操作。我在執行任何UI代碼之前,先在主類的靜態初始化程序中編寫了此代碼。
添加回答
舉報
0/150
提交
取消