Meine While-Schleife funktioniert nicht Topic is solved

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

User avatar
google
Posts: 30
Joined: 16 Nov 2022, 17:19

Meine While-Schleife funktioniert nicht

10 Apr 2023, 12:30

Code: Select all

VFile := "C:\Users\Win11\Downloads\Doc.docx"

	While(!FileExist(VFile) || !(A_index > 10) || !GetKeyState("Ctrl", "P")){
	     ToolTip, % A_index " von 10 Sekunden verstrichen!"
	     Sleep, 1000
	     ToolTip
	}
Hallo,
die Schleife soll abbrechen, wenn eine der folgenden Bedingungen erfüllt ist:

-Die Datei existiert bereits
-Der Zähler A_index ist größer als 10 (A_index > 10)
-Wenn die Strg-Taste gedrückt wird


Danke schon mal in Voraus.
just me
Posts: 9576
Joined: 02 Oct 2013, 08:51
Location: Germany

Re: Meine While-Schleife funktioniert nicht  Topic is solved

11 Apr 2023, 04:00

Moin,

weil Du auf 'Datei existiert nicht' und 'A_Index nicht größer 10' und 'Ctrl-Taste nicht gedrückt' prüfst, läuft die Schleife bei einer Oder-Verknüpfung || so lange, wie eine der drei Prüfungen 'wahr' liefert. Bei 'negierten' Bedingungen musst Du eine Und-Verknüpfung && wählen, wenn jede der drei Einzelbedingungen die Schleife beenden soll:

Code: Select all

While (!FileExist(VFile) && !(A_index > 10) && !GetKeyState("Ctrl", "P")) {
Die Alternative wäre:

Code: Select all

While !(FileExist(VFile) || (A_index > 10) || GetKeyState("Ctrl", "P")) {

Return to “Ich brauche Hilfe”

Who is online

Users browsing this forum: No registered users and 56 guests