Kiadvány tulajdonságai > Műveletek
Previous Topic  Next Topic 

Ha szükséges, itt különleges műveleti eseményeket állíthatuk be, amelyek a kiadvány Indulásakor, Leálláskor, Aktiválásakor, Inaktiválásakor, Oldalváltáskor, Nyugalmi helyzetben futnak le, illetve a Szubrutinok is elérhetők innen. Ezek a műveletek lehetnek például fájlok írása, animációk vagy zene lejátszása, üzenet megjelenítése, pontszám kiszámítása, adatok ellenőrzése stb.


A Művelet ablak tulajdonképpen egy műveletszerkesztő. A Műveletek parancsait begépelhetjük, vagy használhatjuk a Művelet beillesztése gombot is. A Művelet beillesztése gombra kattintva a lehetséges parancsok listája bukkan elő. A parancsok csoportokba vannak rendezve. Keresse meg a megfelelőt, és kattintson rá. A legtöbb parancsnál a NeoBook egy egyszerű párbeszédablakot jelenít meg, aminek a kitöltésével elvégezhetjük a paraméterek helyes megadását. Lásd részletesebben még A műveletekről és a változókról és a Műveleti parancsok listája részt a műveletszerkesztőről és a műveleti parancsokról.


A szerkesztő alján található fülek segítségével juthatunk az egyes események szerkesztőjéhez.


Az Induláskori események: Az itt szereplő parancsok a program indításakor futnak le. Itt állíthatjuk be a kezdeti értékeket, vagy adhatjuk meg saját függvényeink leírását.


A Leálláskori események: Az itt szereplő parancsok a program leállítása előtt futnak le. Itt helyezhetjük el azoknak az adatoknak a mentését, amit olvasóink megadtak a program futtatása közben. A [ShutDownStatus] globális változó értékének megváltoztatásával a leállítási folyamat megszakítható.

Az alábbi példával egy soha le nem állítható kiadványt készíthetünk.


MessageBox "Kiadvány" "Ki akar lépni?" "Igen|Nem" "[Result]"

If "[Result]" "=" "2"

        SetVar "[ShutdownStatus]" "Ne tedd ezt!"

EndIf



A [ShutdownStatus] globális változón felül megvizsgálhatjuk a [ShutdownSource] változó segítségével, hogy mi késztette a leállást. A [ShutdownSource] a következőket tartalmazhatja:


NeoBook

A leállást a NeoBook Exit (Kilépés) művelete idézte elő.

Windows

A leállítást a Windows kezdeményezte. Több Windows esemény idézhet elő programleállást, pl. a Start Menü-n vagy a Feladatkezelőn keresztül. Általában a windows-os leállást a program nem tudja megakadályozni.

CloseButton

A felhasználó a kiadvány ablakának Bezárás gombjával, a rendszermenüből választotta a bezárást vagy az Alt+F4 billentyűt használta.


Például a kiadvány minimalizálását (ikonállapotát) idézhetjük elő a bezárás helyett, amikor a Bezárás gombot megnyomja a felhasználó a következő utasítássorral:


If "[ShutdownSource]" "=" "CloseButton"

  SetVar "[ShutdownStatus]" "False"

  SetVar "[WindowState]" "Minimized"

EndIf


Megjegyzések:

  1. Mint  fentebb már említettük, lehet olyan kiadványt készíteni, amit nem lehet bezárni, de ez „nem szép dolgog”, így ügyeljünk erre.
  2. A szögletes zárójelekkel körbevett szavak változók.


Az Aktiváláskori események: Az itt szereplő parancsok akkor futnak le, amikor a kiadványunk aktív lesz, tehát amikor egy másik program használata után ismét a kiadványunkhoz tér vissza olvasónk.


Az Inaktiváláskori események: Az itt szereplő parancsok akkor futnak le, amikor a kiadványunk inaktív lesz, tehát amikor egy másik futó programhoz kapcsol át olvasónk.



Az Oldalváltáskori események: Az itt szereplő parancsok akkor futnak le, amikor a kiadványunkban olvasónk egy másik oldalra lapoz. A [PageChangeName] változó értékének megváltoztatásával egy másik oldalra irányíthatjuk a kiadványt, vagy megtagadhatjuk a lapozást. Az átirányításhoz egyszerűen meg kell adnunk az új oldal nevét, ahova az átirányítás történik.


SetVar "[PageChangeName]" "Hibaoldal"


A lapozás megtagadásához a változónak egy üres értéket kell megadni. A következő példában csak a regisztrált olvasók tekinthetik meg az oldalt.


If "[PageChangeName]" "=" "Nyalánkságok"

       If "[User]" "<>" "Regisztrált"

               AlertBox "Sajnos, csak a regisztrált felhasználók látogathatnak erre az oldalra!"

               SetVar "[PageChangeName]" ""

       EndIf

EndIf


A Nyugalmi helyzet eseményei: Az itt szereplő parancsok akkor futnak le, amikor a kiadványunk nyugalmi helyzetbe kerül egy bizonyos ideig, azaz nincs billentyűleütés és „egérmozgás”. Ehhez jelöljük be a négyzetet, és írjuk be az azt az időt (másodpercekben), amíg a rendszer várjon, mielőtt végrehajtja az eseménysorozatot. Ezután válasszuk ki azokat az esemény(eke)t, ami(k)et végre akarunk hajtani az adott idő leteltével.


Például ahhoz, hogy egy áruházi bemutatóban a menüoldalra térjen vissza a kiadvány adott idő elteltével azért, hogy a következő látogatót ne zavarja meg, hol hagyta abba az előző, a következő sort kell ebbe a részbe beírni:


GotoPage "Menü"


A Szubrutinok eseményei [F12]: Az itt szerplő programrészeket máshonnan tudjuk meghívni a  GoSub paranccsal. A szubrutinokat egy azonosító címkével kell ellátni, hogy a GoSub paranccsal hivatkozni tudjunk rájuk. Az egyes szubrutinokat a Return paranccsal kell lezárni. Amikor a program a Return parancshoz ér, a meghívó Gosub parancs utáni sorral folytatódik a program futása. Szubrutinokat a gyakran használt programrészekhez célszerű alkalmazni. A szubrutinok használatával mentesülünk ezeknek a programrészeknek a többszöri begépelésétől. Példa:


:ElsoSzubrutin

  AlertBox "Helló" "Ez az én első szubrutinom!"

Return


:MasikSzubrutin

  AlertBox "Helló" "Ez az én másik szubrutinom!"

Return


A szubrutinokat meg kell hívni, azok futása nem automatikus. A kiadány egy másik helyéről a következőképpen tudjuk elérni az első szubrutint:


GoSub "ElsoSzubrutin"