Док-меню Java OS X - PullRequest
       22

Док-меню Java OS X

3 голосов
/ 24 августа 2009

Можно ли добавлять элементы в меню панели приложений?

РЕДАКТИРОВАТЬ: я думаю, что я пропустил формулировку вопроса, я не ищу способ добавить значок в док. Что я ищу, так это то, что когда вы щелкаете правой кнопкой мыши по значку itunes, вы получаете управление itunes в меню (воспроизведение, пауза и т. д.), мне было интересно, как я могу добавить пользовательские элементы в это меню.

Ответы [ 2 ]

5 голосов
/ 01 июля 2010

Загляните в пакет 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 предоставляет jar-файл Apple Java Extensions с заглушками для пакета com.apple.eawt, поэтому код будет скомпилирован с JDK не от Apple.

2 голосов
/ 24 августа 2009

Да (при условии, что я понимаю вопрос).

Если вы просто пытаетесь настроить значок 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

Если вы хотите, чтобы ваше приложение автоматически добавляло свой значок во время установки на док-станцию ​​(возможно, это то, что вы имеете в виду), вы должны знать, что не существует никакого «официального яблочного» способа сделать это, так как это BAD дизайн в OS X, чтобы заставить ваши иконки в доке пользователей, и, как правило, нахмурился. Все пользователи MAC, которых я знаю, будут немедленно удалять ваше приложение в результате такого поведения.

Тем не менее, вы можете просмотреть руководства по системному администрированию на сайте Apple, чтобы увидеть, как это можно сделать программно.

...