带菜单栏的背景应用程序

时间:2012-06-16 14:27:27

标签: macos cocoa

我有一个应用程序,我想从Dock中隐藏。因此Application is agent (UIElement)YES

仍然,我想向用户显示一个窗口,因此我想显示一个菜单栏并在任务切换器(CMD + Tab)中显示该窗口。有没有办法做到这一点?

2 个答案:

答案 0 :(得分:2)

不是这样,不。这是UIElement意义的一部分。它可以显示窗口,但没有菜单栏,也没有Dock或应用程序切换器中的图标(由Dock运行)。

您可以使用-[NSApplication setActivationPolicy:]将UIElement转换为普通应用程序,但不能再将其转换回来。

您的UIElement可以启动帮助应用程序来呈现GUI,然后在完成后退出。这可能会达到你想要的效果,但当然会更复杂。

答案 1 :(得分:0)

我不会这样做。这不是苹果的方式而只是让人困惑。 我想NSMenuItem是解决这个问题的好方法。