我在Max OS X 10.7.5上运行Java应用程序并使用Java 7.我的应用程序有自己的菜单栏。当我单击一个菜单项时,它将带来一个对话框。问题是当我调用对话框时,整个菜单栏消失,关闭后出现对话框菜单栏。这个问题在Java 6上看不到,只在Java 7上出现。
有什么建议吗?
答案 0 :(得分:2)
您看到的菜单栏对应于当前活动窗口。由于您的对话框没有自己的菜单栏,因此当它是活动窗口时都不会显示。然后当对话框关闭并且应用程序窗口变为活动状态时,将再次显示其菜单栏。
一种解决方案是使用setDefaultMenuBar()
。见这个例子:
Application app = Application.getApplication();
app.setDefaultMenuBar(myJMenuBar);
不幸的是,目前还没有在Java 7中实现。所以你可能运气不好。以下是此功能的错误报告:http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=8007267
答案 1 :(得分:0)
以下是某人做同样事情的例子,以及code ranch
给出的答案的剪切&#34;在mac中,我们通常不想设置任何外观和感觉。因为mac为了它而拥有菜单栏。所以你不能设置任何外观和感觉mac implementation.just的代码给了它没有任何外观和感觉代码......然后我希望它现在可以正常工作。因为我在mac中遇到了与swing应用程序相同的问题....&#34; < / p>
- 阿肖克---