Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Poradnik – polecenia warunkowe Autoit


inspir

Rekomendowane odpowiedzi

Opublikowano

(If…Elseif…Else…Endif ,Select…Case…EndSelect, Switch…Case…EndSwitch)

to chyba najprostsze polecenie warunkowe , – chodzi mi o komendę If..Endif

$repeat = 1
While 1
If $repeat < 11 Then
MsgBox(0, "Pętla",$repeat)
Endif
$repeat = $repeat +1
Wend
Składnia tego polecenia jest bardzo prosta:
If  warunek Then ;

; kod do wykonania
Endif; Koniec poleceń wykonywanych pod warunkiem.

Podczas deklarowania warunków można korzystać z operatorów logicznych (OR, AND, NOT) celem zawężenia warunku :
If … Then
Endif

Operatory logiczne są bardzo proste do pojęcia,

AND – polecenia zostaną wykonane jedynie wtedy, gdy i zostaną spełnione.
OR – polecenia zostaną wykonane jedynie wtedy, gdy albo zostanie spełniony.
NOT – Polecenie zostanie wykonane gdy warunek nie zostanie spełniony.

Pozostało omówić jeszcze Elseif…Else wydaje mi się, że na przykładzie poniżej każdy załapie:

<pre>If warunek Then ;Główny warunek instrukcja wykonywana jeśli spełniony zostanie warunek
Elseif  warunek
instrukcja wykonywana jeśli spełniony zostanie drugi warunek, a pierwszy nie
Else
instrukcja wykonywana jeśli nie zostanie spełniony żaden z powyższych
Endif</pre>

Zwracam uwagę, że polecenia wpisane w warunek Elseif oraz Else zostają wykonane jedynie wtedy gdy główny warunek nie zostaje spełniony. Jeżeli główny warunek, bądź pierwszy warunek zadeklarowany Elseif zostaje spełniony kompilator pomija kod instrukcji aż do jej końca (Endif)

Drugim typem poleceń warunkowych jest Switch…Case…EndSwitch, jego zastosowanie prezentuje poniższy skrypt.Polecenie jest bardzo podobne w działaniu do If…Elseif…Else…Endif, jednak w tym przypadku kompilator nie pomija reszty instrukcji gdy zostaje spełniony pierwszy warunek.

<pre>$miesiac = 1
While 1
Switch $miesiac
Case $miesiac = 1
MsgBox(0, „”, „Styczeń”)
Case $miesiac = 2
MsgBox(0, „”, „Luty”)
Case $miesiac = 3 to 5
MsgBox(0, „”, „Marzec, Kwiecień albo Maj…”)
Case Else
MsgBox(0, „”, „…a teraz na pewno Czerwiec”)
EndSwitch
$miesiac = $miesiac + 1
Wend</pre>

W przypadku zastosowania Switch…Case…EndSwitch deklarujemy warunek, na którym zostanie oparty szkielet dalszej instruckji.

Trzecim typem poleceń warunkowych jest Select…Case…EndSelect, jest ono bliźniaczo podobne do w/w polecenia jednak w tym przypadku nie jesteśmy ograniczeni 1 argumentem – możemy je dowolnie dobierać.

Poniższy skrypt wyświetla nam nazwy miesiąców, ponadto prezentuje zastosowanie Case Else, jako argumentu:

<pre>While 1
Select
Case $miesiac = 1
MsgBox(0, „”, „Styczeń”)
Case $miesiac = 2
MsgBox(0, „”, „Luty”)
Case $miesiac = 3
MsgBox(0, „”, „Marzec”)
Case $miesiac = 4
MsgBox(0, „”, „Kwiecień”)
Case $miesiac = 5
MsgBox(0, „”, „Maj”)
Case $miesiac = 6
MsgBox(0, „”, „Czerwiec”)
Case Else
MsgBox(0, „”, „Dalej nie odliczam – mam wakacje”)
Exit
EndSelect
$miesiac = $miesiac + 1
Wend</pre>
 

Kocham mpcforum.pl!!!

18706.png

Opublikowano

to ciekawy i pomocny PORADNIK , który ma pomóc , jak wskazuje tytuł >>> PORADNIK 

jest tu mnóstwo tematów z tym związanych ... To dla nich wstawiłem bo sam szukałem funkcji.

fajnie że pomogłem ... nie ma za co...przyda sie ale po co ???   lepiej skrytykować czyjeś  chęci.  ..najlepiej usunąć temat, 

a chciałem tylko pomuc.......

Kocham mpcforum.pl!!!

18706.png

Opublikowano

Ziomek, po co ktoś miałby wchodzić na mpc (straciłby tylko czas na załadowanie :27_sunglasses:), skoro na wiki AU3 znajdzie to samo? Rozumiem, jakbyś to jakoś po swojemu wytłumaczył, ale nic, kompletnie xD

Poza tym i tak usuną temat za piractwo ;d

 

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...