我一直试图将鼠标光标放在Mac OSX El capitan 10.11.2上。我做了一些挖掘,发现有些方法被弃用,有些是新的。试过很多例子,但到目前为止都没有。
这是我迄今为止所尝试的内容
CGWarpMouseCursorPosition(CGPointMake(200, 200));
这没有工作并返回0
CGPoint warpPoint = CGPointMake(42, 42);
CGWarpMouseCursorPosition(warpPoint);
CGAssociateMouseAndMouseCursorPosition(true);
CGWarp也在这里返回0(基本上是同样的东西)
CGDisplayHideCursor (kCGNullDirectDisplay);
CGAssociateMouseAndMouseCursorPosition (false);
CGDisplayMoveCursorToPoint (kCGDirectMainDisplay, CGPointMake(200, 200));
CGAssociateMouseAndMouseCursorPosition (true);
CGDisplayShowCursor (kCGNullDirectDisplay);
这来自apple.developer也没有。
重要说明:我正在使用VMWare虚拟机。
我尝试过更多代码,但没有任何效果。
答案 0 :(得分:1)
您正在寻找事件队列。以下是Objective-C中的一些示例调用:
CGPoint startButton = CGPointMake(self.gameOrigin.x + 35, self.gameOrigin.y + 340);
CGEventRef click_down = CGEventCreateMouseEvent(
NULL, kCGEventLeftMouseDown,
startButton,
kCGMouseButtonLeft
);
CGEventRef click_up = CGEventCreateMouseEvent(
NULL, kCGEventLeftMouseUp,
startButton,
kCGMouseButtonLeft
);
CGEventPost(kCGHIDEventTap, click_down);
CGEventPost(kCGHIDEventTap, click_up);
CFRelease(click_up);
CFRelease(click_down);