Conditional
|
Cél: |
A szkript végrehajtását egy összehasonlítás eredménye alapján folytatja. Ha az állítás igaz, akkor az utasítássorozatot folytatja az EndIf, illetve az Else műveletig. Ha az állítás hamis, akkor az utasítássorozatot az Else (nem kötelező, opcionális), illetve az EndIf művelet utáni sorral folytatja. |
||||||||||||
|
Kategória: |
Szabályozó |
||||||||||||
|
Szintaxis: |
If "első állítás" "operátor" "második állítás" első állítás az első összehasonlítandó elem, ami lehet szám, szöveg, matematikai kifejezés, változó stb. operátor Egy a következők közül:
Második állítás a második összehasonlítandó elem, ami lehet szám, szöveg, matematikai kifejezés, változó stb. |
||||||||||||
|
Példa: |
A következő példában egy nyomógombot úgy állítunk be, hogyha a szövegmezőbe beírunk egy nevet, akkor a következő oldalra ugorhatunk, ellenkező esetben egy bip hangot és egy hibaüzenetet kapunk. If "[Név]" "<>" "" GotoNextPage Else SoundBuzzer AlertBox "Hiányzik a név!" "Adja meg a nevét!" EndIf Ezt a funkciót használhatjuk a helyes jelszó ellenőrzéséhez is. If "[Jelszó]" "=" "ST0146" GotoNextPage Else SoundBuzzer AlertBox "Hibás jelszó!" "Adja meg a helyes jelszót!" EndIf |
|
Cél: |
A szkript végrehajtását egy komplex kifejezés összehasonlításának eredménye alapján folytatja. Ez egy fejlettebb változata az If műveletnek. Ha az állítás igaz, akkor az utasítássorozatot folytatja az EndIf, illetve az Else műveletig. Ha az állítás hamis, akkor az utasítássorozatot az Else (nem kötelező, opcionális), illetve az EndIf művelet utáni sorral folytatja. |
||||||||||||
|
Kategória: |
Szabályozó |
||||||||||||
|
Szintaxis: |
IfEx"kifejezés" kifejezés egy egyszerű kifejezés, amelyik három elemet tartalmaz: első_tétel operátor második_tétel két tételt összehasonlít egy operátor segítségével, amelyiknek a két tétel között kell lennie. A két tétel lehet szöveg, szám, változó, matematikai művelet stb. Az operátor a következők közül az egyiknek kell lennie:
|
||||||||||||
|
Példa: |
A következő példában [Név] változót hasonlítjuk össze "János"-sal: IfEx "[Név] = János" Ha az összehasonlítás szóközt tartalmaz, akkor idézőjelek közé kell rakni: IfEx "[Név] = [#34] Nagy János[#34]" Összetettebb állításokat is készíthetünk, ha az egyes kifejezéseket az AND (és) vagy az OR (vagy) logikai műveletekkel kapcsoljuk össze. Például megvizsgáljuk, hogy a [Név] változó "János"-sal vagy "Péter"-rel egyenlő-e: IfEx "[Név] = János OR [Név] = Péter" Most megvizsgáljuk, hogy [Vezetéknév] megegyezik-e "Nagy"-gyal, ugyanakkor [Név] "Péter"-rel: IfEx "[VezetékNév] = Nagy AND [Név] = Péter" Jóval komplexebb kifejezésekhez használhatjuk a zárójeleket: "(" és ")", hogy a kiértékelések a megfelelő sorrendben legyenek végrehajtva. |
|
Cél: |
Egy műveleti sort addig ismétel a While és az EndWhile között, amíg az adott feltétel nem teljesül. A műveleti sort az EndWhile paranccsal kell lezárni. |
||||||||||||
|
Kategória: |
Szabályozó |
||||||||||||
|
Szintaxis: |
While "első állítás" "operátor" "második állítás" első állítás, második állítás amely állításokat össze kell hasonlítani. Ezek lehetnek számok, szöveg, matematikai kifejezés, változó stb. operátor
második állítás a második összehasonlítandó elem, ami lehet szám, szöveg, matematikai kifejezés, változó stb. |
||||||||||||
|
Példa: |
A következő példában 100 hangot játszunk le 0 Hz-től 25 Hz-enként növelve a frekvenciát: SetVar "[Számláló]" "0" SetVar "[Frekv]" "0" While "[Számláló]" "<" "100" Math "[Számláló]+1" "0" "[Számláló]" Math "[Frek]+25" "0" "[Frek]" PlayTone "[Frek]" EndWhile |
|
Cél: |
Egy műveleti sort addig ismétel a While és az EndWhile között, amíg az adott feltétel nem teljesül. A műveleti sort az EndWhile paranccsal kell lezárni. Ez egy fejlettebb változata a While műveletnek. |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
While "kifejezés" kifejezés a kiértékelendő kifejezés. Lásd az IfEx műveletet, hogy hogyan kell felépíteni egy kifejezést. |
|
Példa: |
While "[X] > 0 AND [Y] > 0" SetVar "[X]" "[X]-1" SetVar "[Y]" "[Y]-1" EndWhile |
ExitWhile/Kilépés amíg-ciklusból
|
Cél: |
Kilép az adott While/WhileEx/EndWhile ciklusból. A végrehajtás az EndWhile utáni első művelettel folytatódik. |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
ExitWhile |
|
Példa: |
SetVar "[nev]" "" While "[nev]" "=" "" InputBox "Üdvözöljük" "Adja meg a nevét:" "[nev]" If "[nev]" "=" "Adminisztrátor" GotoPage "Setup" ExitWhile EndIf EndWhile |
|
Cél: |
A Loop és az EndLoop állapotok között lévő parancsokat annyiszor hajtja végre, amennyiszer az indulási értéktől a leállási értékig a változó növekszik. (Ha a leállási érték kisebb az indulási értéknél, a ciklus végtelen lesz.) |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
Loop "indulási érték" "leállási érték" "számláló változó" indulási érték a ciklus-számláló kiindulási értéke. leállási érték a ciklus-számláló leállási értéke. számláló változó a ciklus-számláló aktuális értékét tartalmazza. |
|
Példa: |
A következő példában egy adatfájlból olvasunk be adatokat az elsőtől az ötödik sorig, és egy figyelmeztető ablakban jelenítjük meg: Loop "1" "5" "[szamlalo]" FileRead "termek.dat" "[szamlalo]" "[adat]" AlertBox "Termékek" "[adat]" EndLoop |
|
Cél: |
Kilép az adott Loop/EndLoop ciklusból. A végrehajtás az EndLoop utáni első művelettel folytatódik. |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
ExitLoop |
|
Példa: |
Loop "1" "100" "[szamlalo]" Random "100" "[R]" If "[R]" ">" "75" ExitLoop EndIf EndLoop |
|
Cél: |
Egy megadott sorra vagy címkéhez ugrik ugyanabban a műveleti parancssorozatban és onnan folytatja a végrehajtást. A címke egy kettősponttal (:) kezdődő leíró szöveg, amely egy blokk kezdetét szokta jelölni. |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
GotoLine "sor száma vagy címke neve" sor száma vagy címke neve A szkriptben lévő sor száma vagy egy címke neve. |
|
Példa: |
:Teteje InputBox "Stop" "Adja meg a jelszót!" "[jelszo]" If "[jelszo]" "=" "ahogy222" GotoPage "Start" Else GotoLine "Teteje" EndIf |
Függvény könyvtár
|
Cél: |
Végrehajt egy előre definiált szkriptet a Függvénykönyvtárból. |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
Call "függvénynév" "függvényparaméterek" függvénynév a Függvénytárban előre definiált függvény neve függvényparaméterek (opcionális) ha a kiválasztott függvény paramétereket igényel, itt adhatjuk meg idézőjelek között. Paraméterek nélküli függvénynél csak a függvénynév szükséges! |
|
Példa: |
Call "konyvjelzo_mentese" |
Szubrutin műveletek
|
Cél: |
Végrehajt egy szubrutin műveletet. |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
GoSub "szubrutinnév" szubrutinnév a meghívandó szubrutin neve |
|
Példa: |
A következő példa végrehajtja az OlvasoInfoMentes szubrutint. Gosub "OlvasoInfoMentes" |
|
Cél: |
Kilép abból a műveleti részből, illetve szubrutinból, amelyikben éppen van, és visszatér az előzőhöz. |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
Return |
|
Példa: |
:Szubrutin1 AlertBox "Helló!" "Ez az első szubrutinom!" Return |
Megjegyzés: Ezt a műveletet leggyakrabban a szubrutin műveletnél használjuk.
Egér függvények
SetMousePos/Egérhelyzet beállítása
|
Cél: |
Az egérkurzort egy megadott koordinátára viszi. |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
SetMousePos "x koordináta" "y koordináta" x koordináta, y koordináta az egérkurzor új helyzete a kiadvány bal felső sarkához viszonyítva pixelben. |
|
Példa: |
Az alábbi példa a 100; 150 pontba viszi a kurzort, és egy egérgomb lenyomást szimulál: SetMousePos "100" "150" ClickMouse |
|
Cél: |
Az egér helyzetének (koordinátáinak) megállapítása. Az origó a kiadvány bal felső sarkában van. |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
GetMousePos "x változó" "y változó" x változó az egér x koordinátáját tároló változó y változó az egér y koordinátáját tároló változó |
|
Példa: |
GetMousePos "[X]" "[Y]" |
|
Cél: |
Egy egérkattintást szimulál. |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
ClickMouse |
|
Példa: |
A példa a kurzort a 100, 150 koordinátára viszi, ahol egy egérkattintást hajt végre. (Ha ezen a koordinátán egy nyomógomb van, akkor annak az utasításait fogja végrehajtani.) SetMousePos "100" "150"
|
Matematikai műveletek
|
Cél: |
Egy matematikai műveletet hajt végre, majd a változóban tárolja az eredményt. |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
Math "matematikai művelet" "tizedes jegyek száma" "változó" matematikai művelet egy algebrai kifejezés A legtöbb alapfüggvényt használhatjuk: + összeadás - kivonás * szorzás / osztás abs abszolút érték sin szinusz cos koszinusz atan arkusz tangens sqr négyzetre emelés sqrt négyzetgyök-vonás round kerekítés trunk csonkítás Zárójeleket és változókat is tartalmazhat a kifejezés. A matematikai függvényeket követő képletet kerek zárójelek közé kell tenni. tizedes jegyek száma a számítási eredmény tizedes jegyeinek száma. változó az algebrai művelettel kiszámított eredmény tárolója |
|
Példa: |
A következő példában a Math függvény a [havirendelés] változót használja a számításhoz. A [havirendelés] változót a SetVar művelettel tudjuk beállítani, vagy a Szövegbeviteli mezővel (Text Entry) a felhasználó adhat neki értéket. Az eredmény két tizedes jegyet fog tartalmazni (második paraméter), és az eredményt a [hetirendelés] változóban tároljuk. A [hetirendelés] változót megjeleníthetjük például egy címsorban, vagy egy figyelmeztető ablakban. Math "[havirendelés]*12/52" "2" "[hetirendelés]" AlertBox "Eredmény" "A válasz: [hetirendelés]" A következő példa kiszámítja 150 fok koszinuszát két tizedes jegy pontossággal, és az [eredmény] változóban tárolja: Math "Cos (150)" "2" "[eredmény]" |
Megjegyzés: Azok a műveletek, amelyek számot várnak, elfogadják a matematikai műveleteket is, mint paramétert.
|
Cél: |
Egy véletlen számot generál nulla és az általunk megadott maximális érték között. |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
Random "maximális érték" "változó" maximális érték a generált szám maximális értéke. változó amelyikben a generált számot tárolja. |
|
Példa: |
A következő példában a képernyő szélessége és magassága adott, és a Random művelettel egy képet helyezünk el véletlen pozíciókban (a kép vízszintes és függőleges koordinátáit, valamint a megjelenítés idejét generáljuk). :Start SystemInfo "PubWidth" "[PW]" SystemInfo "PubHeight" "[PH]" Random "[PW]" "[X]" Random "[PH]" "[Y]" Random "[5000]" "[L]" PopupImage "[X]" "[Y]" "C:\flower.bmp" "[L]" "Dissolve" "0" GotoLine ":Start" |
|
Cél: |
Egy dátum formátumot számmá alakít, amit további matematikai műveletekhez használhatunk. Az eredmény egy numerikus dátum, amelyik az 1899. december 30-dikától eltelt napok számával egyezik meg. Egy numerikus dátumto a NumToDate művelettel alakíthatunk vissza dátum formátummá. |
||||||||
|
Kategória: |
Szabályozó |
||||||||
|
Szintaxis: |
DateToNum"dátum" "formátum" "változó" dátum két vagy három számból álló dátum, amelyek „\”, „/” vagy „-” karakterekkel van elválasztva. Ha az év értéke 0 és 99 között van, a jelenlegi évszázadot jelenti. A dátum formátumának a következők közül egynek kell lennie. formátum
változó a számmá konvertált dátum tárolására szolgáló változó neve |
||||||||
|
Példa: |
A következő példa a 2004. december 15-dikétől eltelt napok számát adja: DateToNum "12/15/2004" "m/d/y" "[Kiindulas]" DateToNum "[DateShort]" "Default" "[Ma]" Math "[Ma] - [Kiindulas]" "0" "[Eredmeny]" AlertBox "Válasz" "2004. december 15-dikétől [Eredmeny] nap telt el." |
|
Cél: |
Egy numerikus dátumot alakít formázott dátummá. (A numerikus dátum a 1899. december 30-dikától eltelt napok számát jelenti, és a DateToNum művelettel lehet előállítani.) |
||||||||||||||||
|
Kategória: |
Szabályozó |
||||||||||||||||
|
Szintaxis: |
NumToDate "szám" "formátum" "változó" szám egy numerikus dátum formátum A konvertált dátumformátum. A következőket használhatjuk az előállítására, amelyeket "/" törtvonallal kell elválasztani: d: , dd: , m: mm: , yy: , yyyy: , Default:
Például "yyyy/mm/d" esetében 2005/03/15 lesz. változó a dátummá konvertált szám tárolására szolgáló változó neve |
||||||||||||||||
|
Példa: |
NumToDate "38426" "m/d/yyyy" "[Datum]" |
Egyebek
|
Cél: |
Szünetelteti a végrehajtást a megadott ideig. (Milliszekundum a másodperc ezredrésze.) |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
Delay "idő" idő a késleltetés ideje milliszekundumban |
|
Példa: |
Delay "2000" |
|
Cél: |
A felhasználó számítógépéről nyerhetünk információt, amit a változóban tárol. |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
SystemInfo "információ-típus" "változó" információ-típus A következők közül az egyik lehet: PubAuthor: a kiadvány készítője; PubColor: a kiadvány színeinek száma; PubDir: a kiadvány elérési útvonala; PubHeight: a kiadvány magassága (pixel); PubWidth: a kiadvány szélessége (pixel); PubTitle: a kiadvány címe; ScreenColors: a képernyő színeinek száma; ScreenHeight: a képernyő magassága (pixel); ScreenWidth: a képernyő szélessége (pixel); SystemDir: a rendszerkönyvtár elérési útvonala; TempDir: az átmeneti fájlok könyvtárának elérési útvonala; WindowsDir: a Windows könyvtár elérési útvonala; UserName: a felhasználó neve. rendszer környezeti változó, % jelek közé téve. változó az információ eredményének tárolási helye. |
|
Példa: |
A következő példában összehasonlítjuk a számítógép színfelbontását a kiadvány által használt színfelbontással, és figyelmeztető üzenetet küldünk a felhasználónak, ha a számítógépének alacsonyabb a felbontása mint a kiadványé. SystemInfo "ScreenColors" "[KépernyőMód]" SystemInfo "PubColors" "[PubMód]" If "[PubMód]" "<>" "[KépernyőMód]" AlertBox "Figyelem!" "Ez a kiadvány [PubMód] színű képernyő-|felbontást igényel. Az Ön számítógépe|jelenleg [KépernyőMód] színű, így a látvány nem lesz kielégítő." EndIf Ha egy rendszerkörnyezeti változó tartalmát szeretnénk megtudni, az információtípust cseréljük le a változó nevével, amit % karakterek közé helyezünk: SystemInfo "%PATH%" "[Result]" A SystemInfo művelet elavulttá vált, amióta a globális változók ezeket az információkat is tartalmazzák. an can be referenced directly. Az első példát a következőképpen is megoldhatjuk: If "[PubColors]" ">" "[ScreenColors]" AlertBox "Figyelem!" "Ez a kiadvány [PubColors]színű képernyő-|felbontást igényel. Az Ön számítógépe|jelenleg [ScreenColors] színű, így a látvány nem lesz kielégítő." EndIf A korábbi NeoBook verziók kompatibilitása miatt szükség volt arra, hogy a SystemInfo művelet megmaradjon. |
|
Cél: |
Ideiglenesen felfüggeszti az egér és a billentyűzet beviteli folyamatát. A True (Igaz) felfüggeszti, a False (Hamis) ismét engedélyezi a beviteli folyamatot. Ez akkor lehet hasznos, ha parancssorozatot akarunk végrehajtani, mielőtt az olvasó egy gombra kattinthatna. Szintén hasznos lehet ez a parancs az egér fölé/egér el műveleteknél. A False (Hamis) érték automatikusan végrehajtásra kerül, amikor a meghívott szkript befejeződött. |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
Suspend "állapot" állapot A következők közül az egyik lehet: True (Igaz) False (Hamis) False+NoBuffer Alapállapotban a NeoBook automatikusan eltávolítja az egérműveleteket és billentyűleütéseket a Windows puffertárolójából, amikor a Suspend le van tiltva (azokat a műveleteket, amelyeket az olvasó a Suspend alatt végez az egérrel, illetve a billentyűzettel). Ha ezeket az egérműveleteket és billentyűleütéseket meg akarjuk őrizni a pufferban, hogy azokat a NeoBook végrehajtsa a Suspend után, a NoBuffer opciót adjuk a False állapothoz: "False+NoBuffer" |
|
Példa: |
A következő példa felfüggeszti a beviteli folyamatot, amíg a műveletek egy sorozata be nem fejeződött. Suspend "True" ShowObject "Picture1" "Dissolve" "5" ShowObject "Picture2" "Dissolve" "5" ShowObject "PushButton1" "Dissolve" "5" Suspend "False" |
Megjegyzés: Ügyeljünk, ha a Suspend műveletet a Loop vagy a While Loop vagy a While művelettel használjuk. Ha a beviteli műveletet a Loop vagy a While utasítás előtt függesztjük fel, az olvasó nem tud beavatkozni, amíg ezek az utasítások nem fejeződnek be.
ShowErrors/Hibák megjelenítése
|
Cél: |
A hibaüzenet ablak megjelelenítését kapcsolja be, illetve ki. |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
ShowErrors "állapot" állapot ha meg akarjuk jeleníteni a hibaüzenet ablakot, akkor állítsuk "TRUE"-ra, ha magunk akarjuk kezelni a hibát, akkor "FALSE"-ra. A legutolsó hibát a [LastError] változó tartalmazza. |
|
Példa: |
ShowErrors "False" FileRead "config.dat" "1" "[Regkey]" If "[LastError] " ">" "" AlertBox "Hiba" "A konfigurálás érvénytelen!" EndIf ShowErrors "True" |
|
Cél: |
Egy alkalmazás vagy tálca ikont tölt be, és cseréli le az újra, vagy visszaállíthatjuk azt, amelyiket a Kiadvány tulajdonságai részben beállítottunk. |
||||||
|
Kategória: |
Szabályozó |
||||||
|
Szintaxis: |
LoadIcon "fájlnév" "ikon" fájlnév egy Windows formátumú ikon (ico) fájl neve az elérési útvonallal. ikon A következők közül az egyik:
|
||||||
|
Példa: |
LoadIcon "C:\Samples\Busy.ico" "MainIcon" |
Hibakereső
DebugBreakPoint/Hibakereső megszakítási pont
|
Cél: |
Leállítja a futó szkriptet, és egy üzenetet jelenít meg. Ez a művelet csak a teszt üzemmódban hatásos, a lefordított kiadványban nincs hatása. |
|
Kategória: |
Szabályozó |
|
Szintaxis: |
DebugBreakPoint "üzenet" üzenet A párbeszédablak üzenete. Sortöréshez a pipa (| = Alt+124; Alt Gr+w) karaktert használhatjuk. |
|
Példa: |
DebugBreakPoint "A végrehajtás felfüggesztve." |