Az 5.5-ös verziótól a NeoBook NB5ActiveX.ocx szabályozót komponensként (TNeoBookActiveX néven) lehet telepíteni más olyan programozói környezetben, amelyik támogatja az ActiveX szabályozókat. Ezzel a Delphi, Visual Basic, C++ stb. programozók beágyazhatják a lefordított NeoBook kiadványokat a saját alkalmazásaikba. Az ActiveX-hez a metódusok is hozzáadásra kerültek, így a NeoBook változók és műveletek elérhetők programozással.
Az ActiveX szabályozó telepítése
A NeoBook NB5ActiveX.ocx telepítése viszonyag egyszerű. A következő lépések bemutatják, hogyan lehet a szabályozót Delphi programba telepíteni. Ez a folyamat a többi programkörnyezetnél is hasonló.
A NeoBook NB5ActiveX szabályozó importálása a Delphi programba:
1. Válasszuk ki az Import ActiveX pontot a Delphi Component menüjében.
2. Válasszuk ki a NeoBook ActiveX Library (Version 5.5)-t a listából. (Ha egy korábbi NeoBook ActiveX szabályozó van a listában, NE válasszuk ki. A korábbi verziók szabályozója nem kompatibilis a Delphi, VB stb. programokkal!!)
A Delphi Import ActiveX képernyője.
3. Kattinstunk az Install gombra, hogy hozzáadjuk a TNeoBookActiveX szabályozót a komponens palettánkhoz.
TNeoBookActiveX referencialista
A TNeoBookActiveX szabályozó a Delphi TActiveForm leszármazottja. ATNeoBookActiveX-ben az új tulajdonságok, metódusok és események a következők:
Tulajdonságok
|
CustomVar |
Típus: WideString |
|
Ezt a tulajdonságot használhatjuk egy egyedi sztring átadásához a kiadványhoz/pkg-hez induláskor. A sztringet a NeoBookból a [CustomVar] változóval tudjuk elérni. Ezt a tulajdonságot a NeoBook korábbi verzióinak kompatibilitása miatt tartjuk fent. A NeoBook változóihoz való rugalmasabb hozzáférést a ngGetVar és a ngSetVar metódusok biztosítanak. |
|
|
DownloadDir |
Típus: Integer |
|
Ez az opció szabályozza, hogy a kiadvány/pkg fájl internetről való letöltésekor hova kerüljön. Az érvényes opciók: 4 (temp mappa) vagy 2 (Windows mappa). |
|
|
PackageFile |
Típus: WideString |
|
Ez a lefordított NeoBook kiadvány/pkg (.pkg) fájl neve, amit a szabályozóban megjelenít. Ez lehet egy helyi vagy egy távoli fájl URL-je. A távoli fájl a megjelenítés előtt letöltésre kerül. Lásd DownloadDir korábban. Egy kiadvány/pkf fájl készítéséhez használjuk a Web böngésző bedolgozó opciót a NeoBook fordításakor. A fordító által készített .htm fájl nem szükséges a .pkf fájl megtekintéséhez ebben az esetben. A kiadvány/pkg fájl bezárásához állítsuk ezt a tulajdonságot nullára. |
Metódusok
|
GetVar |
Szintaxis: függvény GetVar( const VarName : WideString ) : OleVariant; |
|
Ezzel a függvénnyel megkaphatjuk egy NeoBook változójának tartalmát. A VarName a kívánt változó neve. Példa: Edit1.Text := NeoBookActiveX1.GetVar( '[LastName]' ); |
|
|
SetVar |
Szintaxis: eljárás SetVar( const VarName : WideString; const Value : WideString ); |
|
Ezzel az eljárással beállíthatjuk egy változó tartalmát. A VarName a beállítandó változó neve. A Value a változó megkívánt értéke (tartalma). A tartalomnak string típusúnak kell lennie. Példa: NeoBookActiveX1.SetVar( '[LastName]', Edit1.Text ); |
|
|
ExecAction |
Szintaxis: eljárás ExecAction( const Action : WideString ); |
|
Ezzel az eljárással NeoBook műveleteket lehet végrehajtani. Több művelet végrehajtásához a műveleteket "kocsivissza" jellel kell elválasztani. Példa: NeoBookActiveX1.ExecAction( 'SoundBuzzer'+#13+'AlertBox "Hello" "Greetings from Delphi program..."' ); |
Események
|
OnAfterShutdown |
típus: TAfterShutdownEvent = eljárás( Sender : TObject ) of object; |
|
Ezzel az eseménnyel azokat a folyamatokat lehet kezelni, amelyeket végre kell hajtani a kiadvány/pkg memóriából való eltávolítása után. Mivel a kiadvány már nem fut, ezért nem lehet változókat elérni vagy műveleteket végrehajtani. |
|
|
OnBeforeShutdown |
típus: TBeforeShutdownEvent = eljárás( Sender : TObject ) of object; |
|
Ezzel az eseménnyel azokat a folyamatokat lehet kezelni, amelyeket végre kell hajtani, mielőtt a kidavány/pkg bezárásra kerül. Ez az utolsó lehetőség arra, hogy a NeoBook változók tartalmát megkapjuk, mielőtt a memóriából törlésre kerülnének. |
|
|
OnPageChanged |
típus: TPageChangedEvent = eljárás( Sender : TObject ) of object; |
|
Ez az esemény akkor történik, amikor a kiadvány/pkg oldalt vált (lapoz). |
|
|
OnVarChanged |
típus: TVarChangedEvent = eljárás( Sender : TObject; const VarName, Data: WideString ) of object; |
|
Ez az esemény bekövetkezik, amikor a NeoBook egy változójában változás történik. Ezt arra használhatjuk, hogy figyeljünk bizonyos változókat, és megváltozásukkor megtegyük a szükséges műveleteket. VarName annak a változónak a neve, amelyik megváltozott. Data a változó új tartalma. Megjegyzés: Ezt a műveletet elővigyázatossággal kezeljük, mivel a változók értéke gyakran megváltozhatnak. Ha túl sok időt vesz igénybe ez az esemény, a NeoBook teljesítménye lecsökken! |
Egy kiadvány/pkg helyesen történő bezárása
Mivel a kiadvány/pkg egy másik programon belül fut, az űrlapunk OnCloseQuery eljárásába kódot írva szabályosan zárhatjuk le a folyamatot. Ez biztosítja, hogy a kiadvány/pkg végrehajtja a lezárási műveleteket, bezárja a nyitott fájlokat és figyelmezteti a futó bedolgozókat. Itt van egy példa arra, hogy hogyan lehet helyesen bezárni egy kiadványt/pkg-t:
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
NeoBookActiveX1.PackageFile := '';
NeoBookActiveX1.Free;
CanClose := TRUE;
end;