If / IfEqual / IfNotEqual / IfLess / IfLessOrEqual / IfGreater / IfGreaterOrEqual

Ein oder mehrere Befehle, die ausgeführt werden sollen, wenn der Vergleich einer Variable mit einem Wert als WAHR gewertet wird. Wenn mehr als ein Befehl vorhanden ist, müssen sie mit einem Block (geschweifte Klammern) umschlossen werden.

IfEqual, Var, Wert (oder: if Var = Wert)
IfNotEqual, Var, Wert (oder: if Var <> Wert) (oder: if Var != Wert)
IfGreater, Var, Wert (oder: if Var > Wert)
IfGreaterOrEqual, Var, Wert (oder: if Var >= Wert)
IfLess, Var, Wert (oder: if Var < Wert)
IfLessOrEqual, Var, Wert (oder: if Var <= Wert)
If Var ; Wenn der Inhalt von Var leer oder 0 ist, wird sie als falsch angesehen. Ansonsten ist sie wahr.

Siehe auch: IfInString

Parameter

Var

Name der Variable.

Wert

Direkt geschriebene Zeichenkette, Zahl oder Variablenverweis (z. B. %Var2%). Wert kann weggelassen werden, wenn Sie Var mit einer leeren Zeichenkette vergleichen wollen.

Bemerkungen

Sind Var und Wert rein numerisch, werden sie als Zahlen statt als Zeichenketten verglichen. Ansonsten werden sie alphabetisch als Zeichenketten verglichen (das heißt, dass die alphabetische Reihenfolge bestimmen wird, ob Var größer als, gleich oder kleiner als Wert ist).

Sobald IF oder ELSE mehrere Zeilen enthält, müssen diese Zeilen mit geschweiften Klammern umschlossen werden. Zum Beispiel:

if Anzahl <= 0
{
    WinClose Unbenannt - Editor
    MsgBox Keine Elemente vorhanden.
}

Hat ein IF oder ELSE allerdings nur eine Zeile, können die geschweiften Klammern weggelassen werden.

Neben der IF-Anweisung kann nur ein weiterer Befehl erfolgen, wenn Sie den Befehlsnamen-Style verwenden. Mit anderen Worten sind folgende Beispiele gültig:

IfEqual, x, 1, Sleep, 1
IfGreater, x, 1, EnvAdd, x, 2

Aber diese ungültig:

if x = 1 Sleep 1
IfGreater, x, 1, x += 2

Der "One True Brace Style" kann bei solchen if-Anweisungen nicht verwendet werden. Er ist nur bei if-Ausdrücken gültig.

Auf ähnliche Weise kann mit der Anweisung if var [not] between Untergrenze and Obergrenze überprüft werden, ob eine Variable zwischen zwei Werten liegt, sowie mit if var [not] in Wert1,Wert2 überprüft werden, ob der Inhalt einer Variable in einer Werteliste vorkommt.

Siehe auch

IF (Ausdruck), StringCaseSense, Zuweisungsausdruck (:=), if Var in/contains Vergleichsliste, if Var between, IfInString, Blöcke, Else

Beispiel

if Zähler >= 1
    Sleep, 10

if Zähler >=1   ; Hat ein IF mehr als eine Zeile, müssen sie mit geschweiften Klammern umschlossen werden:
{
    WinClose, Unbenannt - Editor
    Sleep 10
}

if MeineVar = %MeineVar2%
    MsgBox Die Inhalte von MeineVar und MeineVar2 sind identisch.
else if MeineVar =
{
    MsgBox, 4,, MeineVar ist leer. Weiter?
    IfMsgBox, No
        Return
}
else if MeineVar <> ,
    MsgBox Der Wert in MeineVar ist kein Komma.
else
    MsgBox Der Wert in MeineVar ist ein Komma.

if Fertig
    MsgBox Die Variable "Fertig" ist weder leer noch 0.