2014-10-13 53 views
2

在运行OS X(小牛)的Mac上,如何使光标在屏幕上的特定坐标点击X次?OSX - 使光标点击特定的屏幕坐标

我假设这样的事情必须可以从命令行,但我一直没能找到任何相关的函数/库。我假设他们将在Objective-c中。

回答

3

创建合成的点击事件可以通过Quartz Event Services完成。

为了模拟在位置点击(100.0/100.0),你可以使用下面的代码:

CGPoint location = CGPointMake(100.0, 100.0); 
CGEventRef theEvent = CGEventCreateMouseEvent(NULL, kCGEventLeftMouseDown, location, kCGMouseButtonLeft); 
CGEventSetIntegerValueField(theEvent, kCGMouseEventClickState, 1); 
CGEventPost(kCGHIDEventTap, theEvent); 
CGEventSetType(theEvent, kCGEventLeftMouseUp); 
CGEventPost(kCGHIDEventTap, theEvent); 
CFRelease(theEvent); 

请注意,你可能会试图在组合使用事件服务API使用沙箱时遇到问题。