当应用程序在托盘中时,如何在Dock中隐藏Java SWT程序图标

时间:2011-11-23 17:47:59

标签: java macos swt dock trayicon

我知道有很多类似于我的问题,但即使阅读了所有这些问题,我实际上也无法解决我的问题。 我有一个Java应用程序,一旦它启动它继续托盘。问题出在Mac上,因为只有图标位于托盘栏和Dock中。 我想摆脱Dock图标。

我已经进行了多次试验: 尝试将我的jar包装在“.app”文件夹中并编写Info.plist文件。我插入了LSUIElement并将其设置为“1”或“true”。这隐藏了应用程序图标,但显示了一个丑陋的灰色图标终端,它保留在终端中。

screen http://img40.imageshack.us/img40/1332/screenshot20111123at183.png

即使您有任何想法或其他方法可以绕过这一点,请告诉我。 三江源。

1 个答案:

答案 0 :(得分:10)

您可能使用了错误的属性名称。看看这里:

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>