自 mac os 10.4 以来,我一直在使用 CGPostMouseEvent() 来执行鼠标点击。

在处理我的代码并试图使其与 Snow Leopard 100% 兼容时,XCode 发出警告说 CGPostMouseEvent() 已弃用。
虽然这并没有吓到我,但我想知道什么取代了 CGPostMouseEvent()。
这是我如何使用它:

CGPostMouseEvent(point,FALSE,1,TRUE);  // mouse down
CGPostMouseEvent(point,FALSE,1,FALSE); // mouse up

就这样。

有任何想法吗?

谢谢!

最佳答案

CGEventCreateMouseEvent 可以以非弃用的方式与 CGEventPost 一起使用。引用是 here

从 OP 编辑​​:

像这样的东西?

void PostMouseEvent(CGMouseButton button, CGEventType type, const CGPoint point)
{
    CGEventRef theEvent = CGEventCreateMouseEvent(NULL, type, point, button);
    CGEventSetType(theEvent, type);
    CGEventPost(kCGHIDEventTap, theEvent);
    CFRelease(theEvent);
}

关于objective-c - 雪豹上的CGPostMouseEvent替换,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1483567/

10-13 04:07