Else

Bestimmt eine oder mehrere Anweisungen, die ausgeführt werden, wenn die Auswertung einer If-Anweisung False ergibt.

Else Anweisung
Else
{
    Anweisungen
}

Bemerkungen

Jedes Else muss zu einem darüber liegenden If gehören (mit ihm verbunden sein). Ein Else bezieht sich immer auf das nächstmögliche unbeanspruchte If über ihm, es sei denn, ein Block wurde verwendet, um dieses Verhalten zu ändern.

Unmittelbar nach einem Else kann eine beliebige andere Einzelanweisung folgen. Meistens wird dies für "else if" verwendet (siehe Beispiele unten).

Wenn ein Else mehr als eine Zeile hat, müssen diese Zeilen mit geschweiften Klammern umschlossen werden (um einen Block zu bilden). Hat ein Else jedoch nur eine Zeile, können die geschweiften Klammern weggelassen werden. Zum Beispiel:

if (Anzahl > 0)  ; Die nächste Zeile muss nicht mit geschweiften Klammern umschlossen werden, da es nur eine Zeile ist.
    MsgBox Drücken Sie OK, um zu starten.
else  ; Der nächste Abschnitt muss mit geschweiften Klammern umschlossen werden, da es mehrere Zeilen sind.
{
    WinClose Unbenannt - Editor
    MsgBox Es sind keine Elemente vorhanden.
}

Je nach Bedarf kann der One True Brace (OTB) Style bei einem Else verwendet werden. Zum Beispiel:

if IstFertig {
    ; ...
} else if (x < y) {
    ; ...
} else {
    ; ...
}

Blöcke, If-Anweisungen, Kontrollanweisungen

Beispiele

Typische Verwendung einer Else-Anweisung. Dieses Beispiel wird wie folgt ausgeführt:

  1. Wenn Notepad existiert:
    1. Aktiviere es
    2. Sende die Zeichenkette "Das ist ein Test." gefolgt von Enter.
  2. Andernfalls (also wenn Notepad nicht existiert):
    1. Aktiviere ein anderes Fenster
    2. Linksklicke auf die Koordinaten 100, 200
if WinExist("Unbenannt - Editor")
{
    WinActivate
    Send Das ist ein Test.{Enter}
}
else
{
    WinActivate, Ein anderes Fenster
    MouseClick, Left, 100, 200
}

Zeigt verschiedene Möglichkeiten, wie die Else-Anweisung verwendet werden kann. Beachten Sie, dass IfEqual veraltet ist und generell vermieden werden sollte.

if (x = 1)
    Gosub, a1
else if (x = 2) ; "else if"-Stil
    Gosub, a2
else IfEqual, x, 3 ; alternativer Stil
{
    Gosub, a3
    Sleep, 1
}
else Gosub, a4  ; Einzelanweisungen können unmittelbar nach einem Else folgen.
 
; Auch OK:
IfEqual, y, 1, Gosub, b1
else {
    Sleep, 1
    Gosub, b2
}