有没有办法让我的应用程序的窗口接收键盘和/或鼠标事件(即用户单击窗口的按钮),同时仍将焦点保留在另一个不相关的应用程序上?
我尝试在不同级别配置我的窗口,包括 [myWindow setLevel:NSPopUpMenuWindowLevel] 无济于事。
有没有办法让我的应用程序的窗口接收键盘和/或鼠标事件(即用户单击窗口的按钮),同时仍将焦点保留在另一个不相关的应用程序上?
我尝试在不同级别配置我的窗口,包括 [myWindow setLevel:NSPopUpMenuWindowLevel] 无济于事。
找到了。简单,却又难以捉摸。
使用 NSPanel 并确保面板样式为非激活 (NSNonactivatingPanelMask) 或在 IB 的检查器中勾选相同的选项。
您应该能够通过发送消息然后返回来使您的视图(至少是处理鼠标点击的视图)响应消息来处理鼠标点击,而无需对窗口进行acceptsFirstMouse:
排序。NSApp
preventWindowOrdering
YES
你不应该让你的应用程序在没有预先排序的情况下处理打字。如果正在出现的字段被另一个窗口遮住,用户可能不会意识到他们的输入在哪里。