2014-10-13 77 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使用沙箱時遇到問題。