| |
|
|
Michael Wodrich | Die API mouse_event erzeugt einen Mausklick oder eine Mausbewegung.
P:L1: Flag dafür, welche Aktion ausgeführt werden soll und wie die Koordinaten zu interpretieren sind => $8000 = Die angegebenen Mauskoordinaten sind absolute Koordinaten. 1 = Maus wurde bewegt 2 = linker Mausbutton gedrückt 4 = linker Mausbutton losgelassen 8 = rechter Mausbutton gedrückt $10 = rechter Mausbutton losgelassen $20 = mittlerer Mausbutton gedrückt $40 = mittlerer Mausbutton losgelassen $0800 = Am Rad der Wheelmaus gedreht
P:L2: X-Koordinate der Maus als LongInt.
P:L3: Y-Koordinate der Maus als LongInt.
P:L4: Noch ohne Funktion (0).
P:L5: Longint oder P:B5 oder 0 (null). Hier können bei Bedarf zusätzliche Daten übertragen werden, die der Empfänger mit der API GetMessageExtraInfo auslesen kann (Kommunikation zwischen zwei Programmen).
|
|
|
| Programmieren, das spannendste Detektivspiel der Welt. | 06.07.2005 ▲ |
|
|
|
|
E.T. | Ein Beispiel dazu: KompilierenMarkierenSeparierenDef mouse_action(5) !"User32","mouse_event"
declare X&, Y&
cls
X& = (%MaxX/2)*65535/%MaxX'x-zentriert
Y& = (%MaxY/2)*65535/%MaxY'y-zentriert
mouse_action($8000 + 1, X&, Y&, 0, 0)
Print "Startposition : " + @str$(%MouseX) + " - " + @str$(%MouseY)
sleep 500
randomize
whileloop 1,10
X& = @Rnd(%MaxX)'Zufall X-Pos.
Y& = @Rnd(%MaxY)'Zufall y-Pos.
print "Ziel " + @str$(&loop) + " : " + @str$(X&) + " - " + @str$(Y&)
X& = X& * 65535 / %MaxX'Umrechnen!!
Y& = Y& * 65535 / %MaxY'Umrechnen!!
mouse_action($8000 + 1, X&, Y&, 0, 0)
sleep 500
EndWhile
print "Ende mit klick ins Fenster..."
waitinput
end
Wichtig ist das umrechnen der Koordinaten, siehe hierzu z.B. : msdn: [...] oder : [...] |
|
|
| Grüße aus Sachsen... Mario WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte... | 27.11.2010 ▲ |
|
|
|