MouseClick

Klickt eine Maustaste, hält sie gedrückt oder dreht das Mausrad. HINWEIS: Der Click-Befehl ist in der Regel flexibler und einfacher zu bedienen.

MouseClick , WelcheTaste, X, Y, Klickanzahl, Tempo, DownOderUp, Relativ

Parameter

WelcheTaste

Die zu klickende Taste: Left (Standard), Right, Middle (oder jeweils nur der erste Buchstabe); oder die vierte oder fünfte Maustaste (X1 oder X2). Zum Beispiel: MouseClick, X1. Dieser Parameter kann weggelassen werden, um standardmäßig Left zu verwenden.

Mausrad drehen: Geben Sie WheelUp oder WU an, um das Mausrad nach oben zu drehen (von Ihnen weg); geben Sie WheelDown oder WD an, um es nach unten zu drehen (auf Sie zu). [v1.0.48+]: Geben Sie WheelLeft (WL) oder WheelRight (WR) an, um das Mausrad nach links bzw. rechts zu drücken (diese funktionieren nicht in Betriebssystemen älter als Windows Vista). Klickanzahl bestimmt, wie häufig das Mausrad stufenweise gedreht werden soll.

Beachten Sie, dass der Benutzer die primäre und sekundäre Maustaste via Systemsteuerung umschalten kann. Um das automatisch zu kompensieren, nutzt man den Click-Befehl.

X, Y

Die X/Y-Koordinaten der Position, auf die der Mauszeiger vor dem Klicken bewegt werden soll. Diese Parameter können Ausdrücke sein. Koordinaten sind relativ zum aktiven Fenster, sofern das nicht mit CoordMode geändert wurde. Fehlen diese Parameter, wird stattdessen die aktuelle Position des Mauszeigers verwendet.

Klickanzahl

Wie oft die Maustaste geklickt werden soll. Dieser Parameter kann ein Ausdruck sein. Fehlt dieser Parameter, wird die Maustaste nur einmal geklickt.

Tempo

Wie schnell der Mauszeiger bewegt werden soll, von 0 (schnell) bis 100 (langsam). Dieser Parameter kann ein Ausdruck sein.

Hinweis: Ein Tempo von 0 bewegt den Mauszeiger sofort auf die neue Position.

Fehlt dieser Parameter, wird das voreingestellte Tempo von SetDefaultMouseSpeed verwendet (oder 2, wenn die Direktive nicht vorhanden ist).

Tempo wird bei den Methoden SendInput und SendPlay ignoriert; sie positionieren den Mauszeiger sofort auf die neuen Koordinaten (allerdings hat SetMouseDelay einen Modus, der für SendPlay verwendet werden kann). Um den Mauszeiger visuell langsamer zu bewegen (z. B. um einem Publikum etwas vorzuführen), nutzt man SendEvent {Click 100, 200} oder SendMode Event (optional in Verbindung mit BlockInput).

DownOderUp

Fehlt dieser Parameter, wird jeder Klick aus einem DOWN- und UP-Ereignis bestehen. Um dieses Verhalten zu ändern, gibt man einen der folgenden Buchstaben an:

D: Drückt die Maustaste nach unten und lässt sie nicht mehr los (also ein DOWN-Ereignis).

U: Lässt die Maustaste los (also ein UP-Ereignis).

Relativ

Fehlt dieser Parameter, werden die X- und Y-Koordinaten als absolute Werte behandelt. Um dieses Verhalten zu ändern, gibt man den folgenden Buchstaben an:

R: Die X- und Y-Koordinaten werden als Offsets von der aktuellen Mausposition behandelt. Das heißt, dass der Zeiger von seiner aktuellen Position um X Pixel nach rechts (nach links, wenn negativ) und um Y Pixel nach unten (nach oben, wenn negativ) verschoben wird.

Bemerkungen

Dieser Befehl verwendet die gesetzte Sendemethode von SendMode.

Der Click-Befehl ist aus folgenden Gründen besser geeignet als MouseClick:

  1. Click gleicht automatisch die linke und rechte Maustaste aus, wenn sie via Systemsteuerung vertauscht wurden.
  2. Click ist in der Regel einfacher zu bedienen.

Um einen via UMSCHALT oder STRG modifizierten Klick zu erzeugen, führt man den Send-Befehl vor und nach der Operation aus. Zum Beispiel:

; Beispiel #1: 
Send, {Control down}
MouseClick, left, 55, 233
Send, {Control up}
; Beispiel #2:
Send, {Shift down}
MouseClick, left, 55, 233
Send, {Shift up}

Der SendPlay-Modus ist im Gegensatz zu den anderen Methoden erfolgreicher darin, Mausereignisse in Spielen zu erzeugen. Beachten Sie außerdem, dass einige Anwendungen und Spiele eventuell Schwierigkeiten haben, den Mauszeiger zu folgen, wenn er zu schnell bewegt wird. Mit dem Tempo-Parameter oder SetDefaultMouseSpeed kann die Geschwindigkeit reduziert werden (nur im voreingestellten SendEvent-Modus).

Einige Anwendungen ignorieren eine Klickanzahl höher als 1 in Bezug auf das Mausrad. Verwenden Sie bei solchen Anwendungen eine Schleife wie folgt:

Loop, 5
    MouseClick, WheelUp

Der BlockInput-Befehl kann genutzt werden, um zu verhindern, dass physische Mausaktivitäten des Benutzers die künstlich erzeugten Mausereignisse stören. Allerdings ist das bei den Methoden SendInput und SendPlay nicht notwendig, weil sie die physischen Mausaktivitäten des Benutzers automatisch nach hinten verschieben.

Nach jedem DOWN- und UP-Ereignis eines Mausklicks erfolgt automatisch eine Verzögerung (außer beim SendInput-Modus und beim Drehen des Mausrads). Mit SetMouseDelay kann die Verzögerungsdauer geändert werden.

Siehe auch

CoordMode, SendMode, SetDefaultMouseSpeed, SetMouseDelay, Click, MouseClickDrag, MouseGetPos, MouseMove, ControlClick, BlockInput

Beispiele

; Führt ein Doppelklick auf der aktuellen Mausposition aus:
MouseClick, left
MouseClick, left

; Das gleiche wie oben:
MouseClick, left, , , 2

; Verschiebt den Zeiger auf die angegebenen Koordinaten und führt ein Rechtsklick aus:
MouseClick, right, 200, 300

; Hier sind zwei Hotkeys, die das Drehen des Mausrads simulieren:
#up::MouseClick, WheelUp, , , 2  ; Dreht es 2 Rasterungen.
#down::MouseClick, WheelDown, , , 2