Как скрыть значок программы Java SWT в Dock, когда приложение находится в трее - PullRequest
10 голосов
/ 23 ноября 2011

Я знаю, что есть много вопросов, похожих на мои, но на самом деле я не смог решить свою проблему даже после прочтения всех из них. У меня есть приложение Java, которое, как только оно запускается, уходит в трей. Проблема в Mac, потому что только там значок находится в панели задач И в док-станции. Я хочу избавиться от иконки Dock.

Я уже сделал ряд испытаний: попробуйте обернуть мою банку в папку ".app" и написать файл Info.plist. Я вставил элемент LSUIElement и установил его на «1» или «true». Это скрывает значок приложения, но показывает уродливый серый значок, похожий на терминал, который остается в терминале.

экран http://img40.imageshack.us/img40/1332/screenshot20111123at183.png

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

1 Ответ

10 голосов
/ 21 июня 2012

Возможно, вы используете неправильное имя свойства для того, что вы хотите. Посмотрите здесь:

https://developer.apple.com/library/mac/#documentation/Java/Reference/Java_PropertiesRef/Articles/JavaSystemProperties.html

Свойство, которое вы хотите установить, я думаю:

"apple.awt.UIElement" (не "LSUIElement")

Есть два способа сделать это. Вы можете передать:

-Dapple.awt.UIElement="true"

в качестве аргумента VM, или вы можете установить свойство в Info.plist как:

<key>Properties</key>
  <dict>
    <key>apple.awt.UIElement</key>
    <string>true</string>
  </dict>
...