【发布时间】:2021-10-24 20:45:06
【问题描述】:
以下代码用于右键单击工作:
auto event = CGEventCreateMouseEvent(nullptr, kCGEventOtherMouseDown,
{x, y}, kCGMouseButtonRight);
CGEventSetIntegerValueField(event, kCGMouseEventClickState, 1);
CGEventPost(kCGHIDEventTap, event);
CFRelease(event);
但是,将 kCGMouseButtonRight 替换为 kCGMouseButtonLeft 的完全相同的代码不会。
旁注:我想知道这是否是由于后一个事件没有注册,所以我尝试了a "Key Test",发现两个事件都注册为中间按钮(尽管右键单击对其他应用程序按预期工作) .
为什么左键不起作用,我该如何做?
【问题讨论】:
标签: c++ macos mouseevent simulate quartz