3

是否可以将项目添加到应用程序停靠菜单?

编辑:我想我错过了这个问题,我不是在寻找一种将图标添加到扩展坞的方法。我正在寻找的是,当您右键单击 iTunes 图标时,您会在菜单上获得 iTunes 控制(播放暂停等),我想知道如何将自定义项目添加到该菜单。

4

2 回答 2

5

查看 com.apple.eawt 包。具体来说,当您初始化应用程序时,请执行以下操作:

if (System.getProperty("os.name").startsWith("Mac OS X")) {
    // only do this setup if we know this is a Mac
    com.apple.eawt.Application macApp = com.apple.eawt.Application.getApplication();
    java.awt.PopupMenu menu = new java.awt.PopupMenu();
    // create your java.awt.MenuItem objects here
    // add to menu via java.awt.Menu#add(java.awt.MenuItem)
    macApp.setDockMenu(menu);
}

如果您将其作为跨平台应用程序分发,Apple 为 com.apple.eawt 包提供了一个带有存根的 Apple Java Extensions jar,因此代码将使用非 Apple JDK 进行编译。

于 2010-06-30T20:57:35.513 回答
2

是的(前提是我理解这个问题)。

如果您只是想自定义 Dock 中的 Java 图标,请参阅... http://developer.apple.com/documentation/Java/Conceptual/Java14Development/03-JavaDeployment/JavaDeployment.html#//apple_ref/doc/uid/ TP40001885-208447-TPXREF120

OSX 应用程序包部分下的第二点“如果添加适当的图标,它会在 Dock 中显示应用程序图标,清楚地标识您的应用程序。(否则,默认的 Java 咖啡杯图标会出现在 Dock 中。)”

有一个示例应用程序 (Java) 用于处理停靠图标的拖放事件,也位于此处: http: //www.devdaily.com/blog/post/jfc-swing/java-handle-drag-drop-events -mac-osx-dock-应用程序图标

如果您希望您的应用程序在安装期间自动将其图标添加到 Dock(可能是您的意思),您应该知道没有“官方苹果”方法可以做到这一点,因为它在 OS X 上的糟糕设计迫使您的图标进入用户码头,通常不赞成。由于这种行为,我认识的所有 MAC 用户都会立即删除您的应用程序。

尽管如此,您可以查看 Apple 网站上的系统管理指南,了解如何以编程方式完成。

于 2009-08-23T23:14:54.577 回答