在Netbeans中使用的Java桌面应用程序模板中,使用JMenuBar和JMenuItems创建菜单栏。
如何将该栏显示在顶部,在MacOSX中像菜单栏一样显示而不是在窗口内像Windows中一样显示?
如何将该栏显示在顶部,在MacOSX中像菜单栏一样显示而不是在窗口内像Windows中一样显示?
通过将类似以下内容添加到您的代码中:
if (System.getProperty("os.name").contains("Mac")) {
System.setProperty("apple.laf.useScreenMenuBar", "true");
}
我曾经也遇到过相同的问题,但是后来我发现MenuBar需要添加到框架中:
frame.setJMenuBar(menuBar);
而不是:frame.add(jMenuBar); ,同时在主函数中加入:System.setProperty("apple.laf.useScreenMenuBar", "true");
即使在OS X下,Java应用程序看起来仍然像传统的Java应用程序。
如果您想要本地的外观和感觉,您需要进行一些微调。本文系列将对其进行描述。
http://www.oracle.com/technetwork/articles/javase/javatomac-140486.html http://www.oracle.com/technetwork/java/javatomac2-138389.html
这包括设置Dock图标和文本,并与应用程序菜单集成。
我相信使用XCode的OS X“将jar包装为应用程序”实用程序会自动设置所有这些属性。
if
检查呢?如果你不在 Mac 上运行,属性不会被忽略吗? - khelwood