在Netbeans使用的Java桌面应用程序模板中,使用JMenuBar和JMenuItems创建菜单栏。
如何在顶部显示该栏,其中菜单栏显示在MacOSX中而不是在窗口中,如在Windows中?
答案 0 :(得分:13)
通过在代码中添加类似内容:
if (System.getProperty("os.name").contains("Mac")) {
System.setProperty("apple.laf.useScreenMenuBar", "true");
}
答案 1 :(得分:3)
即使在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包装为应用程序”实用程序会自动设置所有这些属性。
答案 2 :(得分:1)
我遇到了同样的问题,但我意识到需要将MenuBar添加到框架中:
frame.setJMenuBar(菜单栏);
而不是: frame.add(jMenuBar); 以及: System.setProperty(“apple.laf.useScreenMenuBar”,“true”); 在主要方法中。