将复选标记(勾选)添加到窗口菜单上活动窗口的 MenuItem 的最佳方法是什么?
是否有执行此操作的标准图标(以及最小化窗口的菱形)?
这里有一篇关于获取 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" ));
然后,您想将该图标添加为您的 JMenuItem 中的 selectedIcon:
JMenuItem myOSXMenuItem = new JMenuItem("My Menu Item");
myOSXMenuItem.setSelectedIcon(checkmarkIcon);
当您在应用程序中打开新窗口时,您可以手动维护此菜单和复选标记状态,方法是在窗口菜单中添加/删除项目,并使用菜单项上的 setSelected() 方法设置当前窗口。