gpt4 book ai didi

java - Mac 状态栏项目但不在 Dock 上

转载 作者:搜寻专家 更新时间:2023-11-01 02:51:18 26 4
gpt4 key购买 nike

我正在尝试在 Mac 上制作一个 java 应用程序,在状态栏中放置一个图标,但我不想要 Mac dock(纸上有咖啡杯的那个)上的 jar 图标。所以我尝试使用 System.setProperty(java.awt.headless, true) 技术,但后来我无法在 SystemTray 菜单栏中放置任何内容,因为我得到了 HeadlessException。如果有人知道解决此问题的方法,我们将不胜感激。

最佳答案

这很容易......如果你知道怎么做:)

首先将你的 jar 文件打包到一个 mac 应用程序包中

然后进入生成的包的内容并打开 info.plist。只需添加 LSUIElement 属性并将其设置为 1。这会在启动时从停靠栏中删除应用程序。也可以在这里查看苹果文档:http://developer.apple.com/library/ios/#documentation/general/Reference/InfoPlistKeyReference/Articles/LaunchServicesKeys.html


为了完整性:还有另一种方法可以做到这一点,但它要痛苦得多。有一个 cocoa 命令允许您动态显示/隐藏停靠栏图标:SetSystemUIMode (https://developer.apple.com/library/mac/#documentation/Carbon/reference/Dock_Manager/Reference/reference.html)您可以尝试使用 rococoa 调用此命令或编写您自己的 jni 库。或者我会有一个 xcode 项目,它在我的 github 帐户中做一些非常相似的事情 - 隐藏菜单栏 - https://github.com/kritzikratzi/jAppleMenuBar/您只需更改 src/native/jAppleMenuBar.m 文件中的一些参数。

关于java - Mac 状态栏项目但不在 Dock 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10663490/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com