Hallo!
Ich benutze wie viele andere auch, recht oft die If Abfragen. Allerdings verstehe ich nicht so ganz wann man diese in () setzen muss.
Also vielleicht könnte mir einer mal erklären wann genau bzw. wozu das notwendig ist.
Dazu folgender Code:
A := "1.0.0.0"
B := "1.1.1.1"
If (A = %B%) ;Das geht nicht da B wohl Punkte beinhaltet
If A = %B% ;Das geht aber warum?
Ich versteh hier leider die Zusammenhänge nicht
Danke im Voraus
MfG
fump
/EDIT: Der Code Tag im "alten Forum" war schöner...
Das sind leider die Nachteile davon, dass AHK grundsätzlich zwei Schreibweisen zulässt: die traditionelle und die expression Schreibweise.
Am einfachsten wäre es, wenn du die traditionelle möglichst komplett vergisst. Bei deiner Variablen-Zuordnung
A := "1.0.0.0"
B := "1.1.1.1"
hast du das ja auch schon getan. In der Exp
ression-Schreibweise ist (im Prinzip) alles, was nicht in "" steht, eine Variable. Im Falle des "If" wird die Exp
ression-Schreibweise durch die Klammern ausgelöst. Richtig muss es daher so sein:
A := "1.0.0.0"
B := "1.1.1.1"
If (A = <img src='http://cdn.autohotkey.com/board//public/style_emoticons/<#EMO_DIR#>/cool.png' class='bbc_emoticon' alt='B)' /> ;Es werden zwei Variablen verglichen
If A = %B% ;Die traditionelle Schreibweise erwartet im 2. Parameter einen String. Das kann durch %% umgangen werden.
Das Thema ist nicht einfach (zu vermitteln). Jeder von uns ist da in seinen Anfangszeiten (und zuweilen auch heute noch) darauf reingefallen.
Schau dir am besten mal
Die Sendung mit der Maus an, da ist alles genau erklärt.