Ein klein wenig Hilfe :D

11/30/2008 15:26 lox.0r#1
Ich würde gern ein Script bauen, dass solange ich die linke Masutaste gedrückt halte lauter Mausklicks sendet (dh. nicht sowas wie "MouseDown"); Nun hab ich aber keine Ahnung wie das gehen soll:confused:, aber bin mir sicher es ist eig. ganz einfach.

Falls jemand weiß wie das geht bitte ich um dessen Hilfe :)

MfG O,...,O
11/30/2008 15:29 i4mSoH34Vy#2
MouseClick("left",X,Y,anzahl an mausclicks,geschwindigkeit)
11/30/2008 15:44 bunney#3
nee ich denke er meint das so

FUnc xx
sleep(500)
if mousedown("left") then
Mouseup("left")
mousdoen("left)
exit loop
endfunc oder sooo
11/30/2008 15:47 iDesign#4
sowas?

#include <misc.au3>
$vdll = "user32.dll"
while 1
If _IsPressed(01,$vdll) Then
MouseClick("left")
EndIf
WEnd
11/30/2008 16:49 lox.0r#5
Quote:
Originally Posted by GWtrader View Post
sowas?

#include <misc.au3>
$vdll = "user32.dll"
while 1
If _IsPressed(01,$vdll) Then
MouseClick("left")
EndIf
WEnd
Fast.^^
Diese Func lässt ihn nur einen Klick machen und dann is Schluss; Doch ich hätte gerne, dass sie solange ichn die Taste halte durchgehend Klicks ausführt.^^ Wär nice.:)
11/30/2008 18:10 bunney#6
ein loop rein
11/30/2008 18:54 lox.0r#7
Ach, und das macht man wie?^^
11/30/2008 19:50 | Moep |#8
Dass Problem an der Sache ist, dass sobald du die Startbedingung von der Schleife erfüllt hast, also die linke maustaste gedrückt wurde, kommst du nicht mehr aus der schleife heraus. Da da ja die einzige funktion innerhalb der schleife die ist, dass ebend genau die linke maustaste gedrückt wird und somit die startbedingung für einen erneuten schleifendurchlauf gegeben wird.
Mir fällt dazu aber spontan keine Lösung ein. Einzig dass du ne andere Taste zum starten nimmst :rolleyes:
11/30/2008 20:00 iDesign#9
#include <misc.au3>
$vdll = "user32.dll"
while 1
If _IsPressed(53,$vdll) Then
MouseClick("left")
EndIf
WEnd

In diesem Fall muss die S Taste gedrückt werden

sollte klappen
11/30/2008 21:42 xSharkoonX#10
Quote:
Originally Posted by GWtrader View Post
#include <misc.au3>
$vdll = "user32.dll"
while 1
If _IsPressed(53,$vdll) Then
MouseClick("left")
EndIf
WEnd

du kannst auch while _IsPressed
Mouseclick

machen
du kannst auch noch mal in der hilfe datei von au3 nach _ispressed suchen und gucken welche zahl die linke maustaste ist ( ich glaub das war 21 oder so und nicht 53)
11/30/2008 22:02 kknb#11
01 ist die linke maustaste wie oben schon geschrieben wurde, aber einfach mal den thread lesen, besonders der teil von | Moep | währe hierbei von bedeutung ;)
12/01/2008 01:12 blauwiggle#12
do..until??
12/01/2008 01:50 kknb#13
while schleife ist schon meiner meinung nach die beste lösung. do...until durchläuft ja den vorgang nur einmal. wenn der wert nicht true ist wird die schleife abgebrochen und das script ist zuende.
12/01/2008 02:05 blauwiggle#14
Warum es wohl unterschiedliche Schleifen gibt? Bestimmt für unterschiedliche Anwendungsbereiche.
Die While 1 passt immer, auch wenn man eine Variable deklariert passt Global immer. Lasst uns double, und co. entfernen :rolleyes:
12/01/2008 02:36 kknb#15
joa ist ja kein problem die richtigen schleifen für die richtigen anwendungsgebiete zu benutzen. do...until ist hier eben fehl am platz.

while _ispressed(bla)

ist doch ideal für diesen fall hier....