是否可以将项目添加到应用程序停靠栏菜单?
编辑:我想我错过了这个问题,我不是想找到一个方法来添加一个图标到码头。我正在寻找的是,当你右键点击itunes图标时你会在菜单上获得itunes控件(播放暂停等)我想知道如何在该菜单中添加自定义项目。答案 0 :(得分: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进行编译。
答案 1 :(得分:2)
是(如果我理解了这个问题)。
如果您只想尝试在Dock中自定义Java图标,请参阅... http://developer.apple.com/documentation/Java/Conceptual/Java14Development/03-JavaDeployment/JavaDeployment.html#//apple_ref/doc/uid/TP40001885-208447-TPXREF120
OSX Application Bundles部分下的第二点 “如果你添加一个合适的图标,它会在Dock中显示应用程序图标,清楚地标识你的应用程序。(否则,Dock中会出现一个默认的Java咖啡杯图标。)”
有一个示例应用程序(Java),用于处理停靠点图标的拖放事件,如下所示: http://www.devdaily.com/blog/post/jfc-swing/java-handle-drag-drop-events-mac-osx-dock-application-icon
如果您希望应用程序在安装到Dock时自动添加它的图标(可能是您的意思),您应该知道没有“官方苹果”方式来执行此操作,因为它在OS X上的BAD设计强制您的图标进入用户码头,通常不满意。我知道的所有MAC用户都会因此类行为立即删除您的应用程序。
尽管如此,您可以查看Apple网站上的系统管理指南,了解如何以编程方式完成。