Ich habe den folgenden Code unter Verwendung von Klicks auf einem MacKlicken mit der Maus nach unten Objekte auf dem Mac zu ziehen
void PostMouseEvent(CGMouseButton button, CGEventType type, const CGPoint point)
{
CGEventRef theEvent = CGEventCreateMouseEvent(NULL, type, point, button);
CGEventSetType(theEvent, type);
CGEventPost(kCGHIDEventTap, theEvent);
CFRelease(theEvent);
}
void Click(const CGPoint point)
{
PostMouseEvent(kCGMouseButtonLeft, kCGEventMouseMoved, point);
NSLog(@"Click!");
PostMouseEvent(kCGMouseButtonLeft, kCGEventLeftMouseDown, point);
PostMouseEvent(kCGMouseButtonLeft, kCGEventLeftMouseUp, point);
}
nun programmatisch zu erteilen, ich versuche unten zu klicken, um den Luftwiderstand zu können, Objekte, wie eine Bildlaufleiste oder ein Anwendungsfenster. Ich verwende die folgenden:
PostMouseEvent(kCGMouseButtonLeft, kCGEventMouseMoved, point);
NSLog(@"Click Down!");
PostMouseEvent(kCGMouseButtonLeft, kCGEventLeftMouseDown, point);
Wenn ich den Code oben etwas lief interessant passieren wird, wenn die linke Maustaste gedrückt Problem nichts zu passieren scheint, ich meine Maus bewegen und das Fenster nicht bewegt, jedoch als ich eine Maus up Ereignis hinzugefügt, dann sprang das Fenster an den Ort, wo ich es angeblich schleppte. das ist irgendwie OK, aber wie kann ich die Maus klicken und ein Objekt ziehen?
Hinweis: Ich habe eine ganze Methode zu sehen, wenn die Maus nicht mehr bewegt, so dass ich klicken kann.
bitte Postleitzahl. Danke
also, ähm, wie, wie machst du es, lol. –
CGEventSetType (Ereignis, kCGEventLeftMouseDragged) – valexa