5

我正在编写一个为所有平台设计的 Java 应用程序,但具体来说,我正在研究 OS X 的外观和集成(我在 MacBook Pro 上使用 NetBeans)。我想访问应用程序的菜单,即以应用程序命名的粗体菜单。我想为 About 和 Quit 项目注册侦听器,并显示 Preferences 项目。我也不介意添加更多我自己的项目。

那么,我该怎么做呢?我看到以前的帖子提到过 OSXAdapter,但 Apple 的天才们决定将它从他们的库中删除(或模糊地重命名),因为所有链接都重定向到主页,而我的所有搜索都没有结果。我还看到了一个MacOSAppAdapter类,但我不确定如何使用它。所有导入和新的类和层次结构都有些混乱。

编辑:

这就是我为绑定到 About、Preferences 和 Quit 项目所做的工作:

我创建了一个新类 MacOSXAboutHandler,它扩展了

com.apple.eawt.Application

它的构造函数只是调用

setAboutHandler(AboutHandler aH)

我为它提供了我自己的监听器,它可以扩展

AboutHandler

在我的主要课程中,我确定我是否在 Mac 上使用

System.getProperty("os.name").contains("mac")

如果这是真的,那么我只需创建一个新的 MacOSXAboutHandler 实例。构造函数添加我的处理程序,并且每当运行应用程序(甚至在 NetBeans 中测试)时,单击应用程序粗体菜单上的 About... 项会执行我在 AboutHandler 中指定的代码。

偏好和退出也是如此,只需将出现的“关于”替换为适当的操作。所有这些处理程序都像任何其他 Java 侦听器一样编写。

4

1 回答 1

3

您可能想看看将您的 Java 应用程序带到 Mac OS X和(更重要的是)将您的 Java 应用程序带到 Mac OS X 第 2 部分将您的 Java 应用程序带到 Mac OS X 第 3 部分

您可能会使用Java System Property Reference for Mac

您可能想看看Apple 的 Java 6 Extensions API,从我的简短阅读来看,您基本上想使用默认实例 if com.apple.eawt.Application并提供您需要的处理程序(例如setAboutHandler)。

您可能还想通读Mac OS X 上的 Java 关于、退出和首选项菜单项和事件文章,该文章应该提供更多附加提示。

于 2012-07-31T06:20:46.430 回答