HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

Varázsló készítését egyszerűsítő komponens


Példaprogram letöltése

6268 bájt

Bizonyos feladatok megoldására jól használhatók az ún. varázslók, melyek a tapasztalatlan felhasználót is végigvezetik a bonyolultabbnak számító műveleteken. Ezeknek a varázslóknak a legfőbb jellemzője, hogy az egyes lépésekhez szükséges adatokat egy-egy lapon adhatjuk meg, melyekből egyszerre csak egy látszik. A lapok között egy „Előző” és egy „Következő” feliratú gombbal lépkedhetünk, az utolsó oldalnál pedig a „Befejezés” gombbal fejezhetjük be a műveletet. Ebben a cikkben egy olyan komponenst készítünk, amely megvalósítja a varázsló lapjait, valamint egy-egy gombot is hozzárendelhetünk az előre, illetve vissza történő lapozáshoz. A komponens eseményeinek felhasználásával bonyolultabb feladatok is megoldhatók.

A mellékelt példaprogram megnyitása előtt a WizardPages.pas-ban lévő komponenst telepítenie kell a Delphi alá.
Elsősorban egy olyan komponensre lesz szükség, amely a Panel komponenshez hasonlóan képes más komponenseket fogadni, viszont tetszőleges számú lapot kell kezelnie. A TabbedNotebook és PageControl komponensek ugyan több lapot képesek kezelni, viszont megjelenésük miatt alkalmatlanok a feladat megoldásához.
Az új komponenst a TNotebook osztályból fogjuk származtatni, ami viszont minden tekintetben megfelel az elvárásoknak. Nincs saját kerete, és több oldalt képes kezelni.
Felveszünk két TButton típusú property-t, melyekben megadható bármilyen nyomógomb komponens, amely a TButton osztályból származik (pl.Button, BitBtn). A ButtonPrevious property-ben az „Előző” gombot, a ButtonNext property-ben pedig a „Következő” gombot kell megadni. Amikor ezeknek a property-knek értéket adunk, akkor a megadott gomb komponens OnClick eseményének értékét elmentjük, és a saját eseményünket rendeljük hozzá. Az eredeti esemény sem veszik el, mert azt is meg fogjuk hívni.
Négy új eseményt is megadunk, ezek a következők:
  • BeforeChange: ez az esemény a „lapozás” előtt jön létre. A Page paraméterben megkapjuk, hogy melyik oldal jelenik meg. Ezt szükség szerint akár módosíthatjuk is, ahogy az a mellékelt példaprogramban is látszik. A Direction paraméterből megtudhatjuk, hogy melyik irányból történt a lapozás, vagyis az „Előző”, vagy a „Következő” gombra kattintott-e a felhasználó.
  • OnFinish: ez az esemény akkor következik be, amikor az utolsó lap az aktív, de a felhasználó mégis a „Következő” gombra kattint. Ezzel az eseménnyel valósíthatjuk meg a „Befejezés” gombot, ahogyan a mellékelt példaprogramban is tettük.
  • OnPrevButtonClick: az „Előző” gombra kattintás eseménye.
  • OnNextButtonClick: a „Következő” gombra kattintás eseménye.
Lapozni programból a PrevPage és a NextPage eljárásokkal tudunk előre, illetve hátra. A FirstPage illetve LastPage logikai függvényekkel ellenőrizhetjük, hogy az első lapon, vagy az utolsón állunk-e.

Cikksorozat

#IDKategóriaCikk címeSorozat
1018DelphiVonalkód készítő komponens1. rész
1028DelphiVonalkód nyomtatása a QuickReport-al2. rész


Könyv
Ez a cikk megtalálható ebben a könyvben: Delphi Software Offline 2002 évkönyv 61. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |