我正在尝试创建一个LSUIElement应用,其行为类似于Spotlight,CoverSutra和其他类型的应用。我设法创建了一个自定义的NSStatusItem,它弹出了NSWindow,但问题是当前有焦点的应用程序将重点关注我的自定义NSWindow。
我基于Matt Gemmell的例子(http://mattgemmell.com/2008/03/04/using-maattachedwindow-with-an-nsstatusitem)
例如,如果您在Safari中并单击Spotlight图标,则当前的Safari窗口不会变灰并保持聚焦状态。在Spotlight中按ESC键时,焦点将返回到Safari窗口。
我没有设法用我的自定义NSWindow做到这一点。我必须单击一个窗口将焦点设置回它。
所以我想知道要实现这个目标的路线。解决方案是NSWindow,NSPanel,NSMenu和自定义NSMenuItem吗?
答案 0 :(得分:4)
使用NSPanel和NSNonactivatingPanelMask作为styleMask或勾选IB中的选项。