所以我正在开发一个桌面覆盖应用程序,它使用跟踪区域来确定鼠标进入和退出该区域,然后执行某些操作。基本上我正在构建一个矩形,可以知道鼠标是否在它上面盘旋,并且会发生变化(非常基本的翻转。)
唯一棘手的部分是我希望它能够在可见时注册这些事件,即使它不是第一响应者或密钥。问题是,为了让它注册mouseEntered和mouseExited事件,我必须首先点击窗口,使它成为键,然后它注册它们。
我的问题是,实现这一目标的最佳方法是什么?虽然我很接近,但我还没有找到完美的解决方案。
以下链接使它能够注册CLICK事件,即使它没有集中注意力,但是我无法找到让它实际注册mouseEntered和mouseExited的东西。
Make OSX application respond to first mouse click when not focused
答案 0 :(得分:5)
使用选项NSTrackingArea
创建NSTrackingActiveAlways
。