OpenScript juhtstruktuurid
Juhtstruktuurid on OS laused, mis vastavalt mingitele tingimustele juhivad tegevusi. Juhtstruktuure võib paigutada ka üksteise sisse.
Kasulik on teada käsku:
break [tegevus] katkestab juhtstruktuuri täitmise
Omamoodi juhtkäsuks on ka:
pause x [seconds] mis peatab töö määratud arvuks “ToolBook’i” oma ajaühikuks või sekundiks.
Hargnemised on sellised juhtstruktuurid, mis vastavalt mingisugustele tingimustele suunavad edaspidist tegevust.
...........
[else ...........]
end if
”IS” (inglise keeles: on) asemel võib kasutada ka võrdusmärki. Samuti võib vajaduse korral kasutada võrdlusmärke (<; <=; >; >=; <>).
Näiteks:
to handle buttonClick
system kuhu
if kuhu is “metsa”
go to page “mets”
else
go to page “algus”
end if
end buttonClick
Nagu igas korralikus programmeerimiskeeles on võimalik kasutada ka liittingimusi sõnade OR (inglise keeles: või) ja AND (inglise keeles: ja) abil.
Näiteks:
if arv > 100 and arv < 200
when muutuja is väärtus1
...............
when muutuja is väärtus2
...............
........................................
end conditions
Näiteks:
to handle buttonClick
request “Mida soovid?” with “&Hiir” or “&Kass”
conditions
when it is “Hiir”
go to page “hiir”
when it is “Kass”
go to page “kass”
end conditions
end buttonClick
Tekstimuutujate korral võib nii if kui ka conditions struktuuride korral kasutada ka kontrolllauset “contains tekst”, mis kontrollib, kas antud tekstimuutuja väärtus sisaldab nimetatud osa.
Näiteks:
if loomanimi contains “koer”
when loomanimi contains “koer” or loomanimi contains “kutsu”
Tüklid on programmi sellised osad, mida täidetakse vastavalt vajadusele mitmeid kordi järjest.
....
end step
Sellise tsükli sisu täidetakse nii mitu korda, kui on vaja algväärtusele etteantud sammu liita, et saada lõppväärtust.
Näiteks:
to handle buttonClick
step X from 0 to 100 by 2
put X into text of field “number”
end step
end buttonClick
....
until tingimus
See struktuur kordab temas loetletud käske kuni tingimus saab tõeseks.
Näiteks:
set muutuja to 0
do
increment muutuja by 1
until muutuja = 100
...
end while
Käske korratakse kuni tingimus on veel tõene.
Näiteks:
set muutuja to 0
while muutuja < 1000
increment muutuja by 10
end while