Post by gregster » 04 Dec 2019, 16:51
Ja, die Reihenfolge müsste man getrennt speichern. Btw, es wird nach den
Keys sortiert, nicht den
Values: "bin" ist hier - alphabetisch gesehen - vorne.
Code: Select all
F1::
Ueberspringe := 0
text := ["Ich", "bin", "eine", "Schleife", "mit", "viel", "Sleeps..."]
sleeps := {"Ich" : 1500 , "bin" : 1000, "Schleife" : 1000, "eine" : 2000}
Loop
for idx, wort in text
{
Sendinput % wort A_Space
Sleep % sleeps[wort]
If (Ueberspringe)
{
Ueberspringe := 0
continue 2 ; springe zum Beginn der äußeren Schleife ("Loop")
}
}
return
q::Ueberspringe := !Ueberspringe
^q::ExitApp
Oder als zusätzliche lineare Array:
sleeps := [1500, 1000, 2000, 1000 ], sodass der Index/die Position allein entscheidend ist. Kommt drauf an, was man übersichtlichtlicher findet und wie viele (verschiedene) Keys man hat.
Auch das wäre u. a. denkbar:
text := ["Ich", 1500, "bin", 1000, "eine", 2000, .... ] mit leichten Modifikationen im Quelltext. Oder diverse Schachtelungen.
Ja, die Reihenfolge müsste man getrennt speichern. Btw, es wird nach den [i]Keys[/i] sortiert, nicht den [i]Values[/i]: "bin" ist hier - alphabetisch gesehen - vorne.
[code]F1::
Ueberspringe := 0
text := ["Ich", "bin", "eine", "Schleife", "mit", "viel", "Sleeps..."]
sleeps := {"Ich" : 1500 , "bin" : 1000, "Schleife" : 1000, "eine" : 2000}
Loop
for idx, wort in text
{
Sendinput % wort A_Space
Sleep % sleeps[wort]
If (Ueberspringe)
{
Ueberspringe := 0
continue 2 ; springe zum Beginn der äußeren Schleife ("Loop")
}
}
return
q::Ueberspringe := !Ueberspringe
^q::ExitApp[/code]
Oder als zusätzliche lineare Array: [c]sleeps := [1500, 1000, 2000, 1000 ][/c], sodass der Index/die Position allein entscheidend ist. Kommt drauf an, was man übersichtlichtlicher findet und wie viele (verschiedene) Keys man hat.
Auch das wäre u. a. denkbar: [c]text := ["Ich", 1500, "bin", 1000, "eine", 2000, .... ][/c] mit leichten Modifikationen im Quelltext. Oder diverse Schachtelungen.