2009-08-23 143 views
3

是否可以將項目添加到應用程序停靠菜單?Java OS X Dock菜單

編輯:我想我錯過措辭的問題,我不想找到一種方法來添加圖標到碼頭。我正在尋找的是,當你右鍵點擊itunes圖標,你會得到菜單上的iTunes控制(播放暫停等),我想知道如何添加自定義項目到該菜單。

回答

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); 
} 

如果您正在分發這是一個跨平臺的應用程序,蘋果提供了一個蘋果Java擴展罐子存根的com.apple.eawt包,所以代碼將使用非Apple JDK進行編譯。

2

是的(提供我理解的問題)。

如果你只是想定製Java圖標在Dock中看到... http://developer.apple.com/documentation/Java/Conceptual/Java14Development/03-JavaDeployment/JavaDeployment.html#//apple_ref/doc/uid/TP40001885-208447-TPXREF120

觀點二OSX下的應用程序捆綁部分 「如果你添加相應的圖標,它顯示在Dock中的應用程序圖標,清楚地標識您的應用程序(否則,Dock中會出現一個默認的Java咖啡杯圖標。)「

有一個示例應用程序(Java)用於處理您的停靠點圖標的拖放事件以及此處的位置: http://www.devdaily.com/blog/post/jfc-swing/java-handle-drag-drop-events-mac-osx-dock-application-icon

如果你希望你的應用程序在安裝過程中自動將它的圖標添加到擴展塢(可能是你的意思),你應該知道沒有「官方蘋果」的方式來做到這一點,因爲它是OS X上的壞設計,強制你的圖標進入用戶停靠,並且通常會皺眉。所有我知道的MAC用戶都會立即刪除您的應用程序。

也就是說,您可以查看Apple網站上的系統管理指南,瞭解它如何以編程方式完成。