我正在尝试监听用户发出的所有鼠标点击。我需要知道用户点击了哪个窗口(大概是通过它的CGWindowID)。我正在通过一个CGEventTap监听所有的点击,但现在我找不到如何获得被点击的窗口。您是否知道从CGEventRef对象中检索窗口id的方法?
另外,我知道在使用NSEvent addGlobalMonitorForEventsMatchingMask时,我可以通过获取event windowNumber来获取窗口id,但我不能使用此侦听器,因为出于某些原因,在设置侦听器之后,它会阻止所有输入到我自己的窗口。也许有人也知道,这是从哪里来的?
谢谢!
佩德罗
发布于 2015-02-17 06:26:40
在将windowNumber转换为NSEvent后,您是否能够访问CGEvent
CGEvent cgEvent = EVENT_FROM_YOUR_CGEVENT_TAP;
NSEvent *nsEvent = [NSEvent eventWithCGEvent:cgEvent];
NSInteger windowNumber = [nsEvent windowNumber];https://stackoverflow.com/questions/23256893
复制相似问题