2012-05-08 106 views
2

什麼是在窗口菜單上將活動窗口的MenuItem添加勾號(勾號)的最佳方法是什麼?Java Swing OSX窗口菜單對勾

有沒有一個標準的圖標來做到這一點(和最小化窗口鑽石)?

+0

[續] here(http://stackoverflow.com/questions/10502844/java-swing-osx-window-menu-icon-alignment) – mKorbel

回答

3

有在這裏獲得OS X系統的特定圖標的大文章:

http://nadeausoftware.com/articles/2008/12/mac_java_tip_how_access_mac_specific_nsimage_icons

要爲這個圖標是「對號」,你可以用這個得到它:

final Icon checkmarkIcon = new ImageIcon(Toolkit.getDefaultToolkit().createImage("NSImage://NSMenuOnStateTemplate")); 

然後,你想那個圖標添加爲selectedIcon在你的JMenuItem:

JMenuItem myOSXMenuItem = new JMenuItem("My Menu Item"); 
myOSXMenuItem.setSelectedIcon(checkmarkIcon); 

當您在應用程序中打開新窗口時,您可以手動維護此菜單和複選標記狀態,方法是在窗口菜單中添加/刪除項目,並使用菜單項上的setSelected()方法設置當前窗口。

+0

謝謝戴夫,我會在接下來的幾天嘗試目前忙於無關的任務)... – Lyndon