Jump to content

Sky Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate
Photo

Frage zu if


  • Please log in to reply
2 replies to this topic
fump2000
  • Members
  • 591 posts
  • Last active: Nov 11 2015 07:52 AM
  • Joined: 01 Nov 2012
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 Posted Image

Danke im Voraus

MfG
fump

/EDIT: Der Code Tag im "alten Forum" war schöner...

ruespe
  • Members
  • 567 posts
  • Last active: Dec 01 2014 07:59 PM
  • Joined: 17 Jun 2008

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 Expression-Schreibweise ist (im Prinzip) alles, was nicht in "" steht, eine Variable. Im Falle des "If" wird die Expression-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.

fump2000
  • Members
  • 591 posts
  • Last active: Nov 11 2015 07:52 AM
  • Joined: 01 Nov 2012
Vielen Dank! Das hat mir das ganze etwas klarer gemacht :)