2012-02-12 63 views
1

我在Netbeans Platform 7.1中构建应用程序,问题在于,当我在Mac OS(Lion)上运行它时,菜单栏位于窗口中,而不是桌面的顶部。Mac OS上错误位置(在窗口中)的菜单栏。 Netbeans平台应用程序

哪里可以解决问题?

+1

这可能是由于使用Java 7,因为它不支持Aqua,而是使用X11代替。 – Eelke 2012-02-12 15:31:57

+0

@Eelke your'e吧。我在JDK7上。有没有解决方法? – Uko 2012-02-12 19:50:54

回答

1

你将不得不切换回Java 6中,所以你可以使用苹果的执行,否则将不得不耐心的OpenJDK是完整的port的。

编辑: 安装的OpenJDK 1.7的最新macportpreview。但是我的基于NetBeans平台的应用程序仍然没有使用苹果菜单栏。然后做了一个小的Swing应用程序,它确实使用了苹果菜单栏。所以这是可能的。在几个地方用netbeans.conf尝试了几件事,但没有帮助。但是,下面的工作。在我的netbeans平台应用程序的一个核心模块中,我已经有了一个ModuleInstaller。所以我改变了恢复的功能,包含以下几行:

@Override 
public void restored() { 
    if (System.getProperty("os.name").equals("Mac OS X")) { 
     System.setProperty("apple.laf.useScreenMenuBar", "true"); 
    } 
} 
+0

但是您发布的链接后面的页面显示**屏幕菜单栏**已完成(绿色勾号)。如果是这样,你有什么想法,如果我可以从http://jdk7.java.net/macportpreview/使用JDK7,或者我需要获得一些最新的代码并自己编译它? – Uko 2012-02-12 21:05:36

1

确保:

一)-J-Dapple.laf.useScreenMenuBar =真-J-Dapple.awt.graphics.UseQuartz =真被列入 “等/的netbeans.conf” 设置文件。这使平台正确放置菜单。 b)您在“平台”群集中包含“Apple Application Menu”模块以及“窗口系统API”及其依赖关系。

干杯, 安东尼

+0

谢谢你的回复!是的,**苹果应用程序菜单**已被打开,但是当我打开它时 - 没有任何更改(使得构建完成)。** Window System API **已打开。另外我根本没有'/ etc/netbeans.conf'文件。我应该创建它吗?顺便说一下,IDE的菜单栏显示正确。也许我可以检查一些日志? – Uko 2012-02-12 19:49:44

+0

安装它时,etc/netbeans.conf将在应用程序目录中创建。 – 2012-02-14 13:38:15

相关问题