gpt4 book ai didi

objective-c - 来自 addGlobalMonitorForEventsMatchingMask 的通知可以取消吗?

转载 作者:行者123 更新时间:2023-12-03 16:59:39 35 4
gpt4 key购买 nike

我有简单的鼠标点击全局监视器:

[NSEvent addGlobalMonitorForEventsMatchingMask:NSLeftMouseDownMask handler:^(NSEvent *event){
if ([event type] == NSLeftMouseDown) {
[self mouseDown];
if (self.lockMouse) {
// Cancel event
}
}
}];

有没有办法取消全局鼠标事件,这样单击只会通知我的应用程序?即:在“锁定”状态下单击屏幕上的任何按钮(不属于我的应用程序)后,事件将转到此处,但不会转到光标下方的按钮。类似于 JavaScript 中的 event.preventDefault()。

最佳答案

不使用此 API,不。从文档中可以看出该 block 是:

The event handler block object. It is passed the event to monitor. You are unable to change the event, merely observe it.

如果您想拦截事件并阻止其传播,则需要使用CGEventTap

关于objective-c - 来自 addGlobalMonitorForEventsMatchingMask 的通知可以取消吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5071258/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com