Egy oldal megjelenését egy XML file írja le. Ez az XML nagyon egyszerű struktúrát ír le, mivel az alapkoncepció szerint az oldal csak egy egyszerű táblázatból állhat.
SCREEN
A gyökér elem. A következő tulajdonságai vannak:
- NAME: a SCREEN neve; elhagyása esetén egy ERROR kerül a logba és a SCREEN neve
NoNamelesz. SubScreen esetén enélkül nem tudunk hivatkozni rá - TITLE: a SCREEN felirata; ez jelenik meg az ablak címsorában; alapesetben üres
- LP_TITLE: a SCREEN felirata a CLangpack használatával
- PADDING: megadja, hogy az egyes komponensek között mekkora hézagot hagyjon (alapérték: 10)
- BORDER: megadja, hogy a panelnek legyen-e kerete (alapérték: true)
- BKGIMAGE: ezzel a tulajdonsággal definiálhatjuk felül a téma fájlban definiált háttérszínét a panelnek (alapérték: a témafájlban megadott szín)
- BKGIMAGEPOS, BKGIMAGEREPEAT: a háttérkép rendezettségét adhatjuk itt meg, ugyanúgy, ahogyan a téma fájlban is tehetjük az ugyanilyen nevű tulajdonságokkal
ROW
A sorokat határolja a HTML-hez hasonlóan. Az oldal megjelenítéséért felelős elemek csak ezen belül lehetnek. (a natív kliens nem igényli a záró tagot, de azért érdemes kirakni)
HELP
A HELP elemnek nincsenek tulajdonságai. A <HELP> és </HELP> elemek közötti szöveg a SCREEN megjelenésekor az F1 billentyű hatására jelenik meg. Ide kell írni az adott SCREEN-hez tartozó segítséget.
SCREEN
Ezen a tag-en belül egy teljesen ugyanilyen struktúrájú subscreen-t helyezhetünk el. A SIS (Screen-In-Screen) technikával tetszőleges tagolás elérhető és az elemek átrendezése is sokkal egyszerűbbé válik.
Amennyiben subscreenre szeretnénk hivatkozni (például setvalue függvényben), akkor ezt a subscreen_neve.elem_neve módon tehetjük meg. A subscreen-ekre semmilyen korlát nincs, tehát lehet neki is subscreen-je (amelyre subscreen1_neve.subscreen2_neve.elem_neve módon hivatkozhatunk).
A következő tulajdonságaiban tér el a (külső) SCREEN-től:
- a BORDER tulajdonság ebben az esetben alapértelmezés szerint ki van kapcsolva;
- van egy CAPTION és egy LP_CAPTION tulajdonsága: bármelyik megadása esetén egy picit másmilyen stílusú panel jelenik meg: kerete van és a keretben szerepel a CAPTION tulajdonságban megadott vagy az LP_CAPTION és a CLangpack által meghatározott megadott szöveg.
- a HALIGN és VALIGN tulajdonságokkal meghatározhatjuk, hogy a SCREEN-en lévő komponensek merre legyenek igazítva (mindkettőnél none az alapértelmezett)
Másik lehetőség, hogy egy <SCREEN FILE="fájlnév" /> alakú bejegyzést helyezünk el, ez a megadott fájlból beolvassa a SCREEN adatait és beilleszti az oldal tartalmába, mintha az ide lett volna beírva. FONTOS: a SubScreen nevét alapértelmezetten a fájlból veszi, de amennyiben a hívó TAG-ben szerepel NAME tulajdonság, akkor az kerül alkalmazásra (pl: <SCREEN FILE="fájlnév" NAME="test" /> esetén a SubScreen-re test néven hivatkozhatunk a fájlban megadott névtől függetlenül)
CONTROL
A CONTROL helyett használható az ELEMENT megnevezés is, de ennek támogatása várhatóan meg fog szűnni.
Az oldal ilyen CONTROL-okból épül fel. A CONTROL egyetlen kötelező mezője a TYPE, amely megadja a CONTROL tipusát.
Minden CONTROL rendelkezik a következő tulajdonságokkal:
- TYPE: a CONTROL típusát adja meg a lentebb megadott módon (alapérték: EMPTY)
- ROWSPAN, COLSPAN: ez adja meg, hogy a cella hány cella magas illetve széles (azaz mennyi van egymás mellett/alatt összevonva). A kezelése teljesen megegyezik a hasonló nevű HTML tulajdonságokkal
- HALIGN: a cellán belüli vízszintes igazítást adhatjuk meg vele. Lehetséges értékei:
right,center,left - VALIGN: a cellán belüli függőleges igazítást adhatjuk meg vele. Lehetséges értékei:
bottom,middlevagycenter,top - HINT: a mezőn megjelenő gyorstipp; ez jelenik meg, ha az egeret hosszabb időre a kontrol fölé visszük
- VISIBLE: az elem láthatóságát adhatjuk meg vele; InLine (alapérték: true)
- DISABLED: az elem engedélyezetségét adhatjuk meg vele; InLine; (alapérték: true)
- RONEED: a NEED tulajdonsághoz teljesen hasonló eredménye van, de nem az elem engedélyezettségét, hanem írhatóságát lehet vele szabályozni - természetesen olyan komponensek esetén, amelyeknél nincs felhasználói bevitel teljesen hatástalan
A következőkben a CONTROL tipusokat részletezem, a Tulajdonságok szekcióban az XML-ben megadható tulajdonságokat, a Visszaadott érték szekcióban az OperationData-ba gombnyomáskor elhelyezett illetve a GetValue() függvény által visszaadott értéket (amely általában ugyanaz), az Értékadás szekcióban pedig a SetValue() függvénnyel megadott érték hatását fejtem ki, végül az Események szekcióban az contolhoz kapcsolható esemény-típusokat sorolom fel.
PageControl
A Windows-ban jól ismert tab-os komponens, amellyel rengeteg helyet spórolhatunk meg az oldalon.
Ezen a TAG-en belül tetszőleges számú SCREEN tag elhelyezhető, amely a szokásos komponensekkel használható és használható a fájlból olvasott SCREEN is. A SIS technikához hasonlóan itt sincs semmilyen megszorítás: lehet elhelyezni a komponensen subscreent és újabb pagecontrol-t is! Speciálisan kezeli ha valamelyik másik komponens PAGECONTROL-ra hivatkozik a NEED illetve a RONEED tulajdonságban. Ilyenkor a komponens neve után ”:”-al elválasztva módosítót lehet megadni (pl: page:notlast):
- first: akkor engedélyezi, ha az első lapon állunk
- notfirst: akkor engedélyezi, ha nem az első lapon állunk
- last: akkor engedélyezi, ha az utolsó lapon állunk
- notlast: akkor engedélyezi, ha nem az utolsó lapon állunk
- <szám>: akkor engedélyezi, ha a <szám>-adik sorszámú (0-tól kezdve a számolást) lapon állunk
- egyébként: akkor engedélyezi, ha a megadott nevű lapon állunk
Tulajdonságok
- ACTIVE: Az aktív SCREEN neve, ezzel az oldallal fog indulni a PAGECONTROL. Ha egy számot adunk meg, akkor az annyiadik SCREEN lesz az aktív (nullától kezdve a számolást). Alapérték: 0
- STYLE: A PAGECONTROL stílusa. A következő értékei lehetnek:
| Érték | Definiált konstans | Jelentés |
|---|---|---|
| 0 | TS_TABS | Az alapértelmezett eset; a szokásos tabos módszer |
| 1 | TS_BUTTONS | Mintha a tabok helyén szabvány Windows gombok lennének |
| 2 | TS_FLATBUTTONS | A tabok helyén felirat, amely “lenyomódik”, ha kiválasztjuk |
- MULTILINE: Ha a megadott érték igaz, akkor a tabok több sorban is elhelyezkedhetnek (ha szükség van rá), ellenkező esetben scrollozni kell. Alapérték: 0
- HOTTRACK: Ha a megadott érték igaz, akkor az egyes tabokon “jelzi”, hogy az egér fölötte van (más szinű lesz a felirat, a gomb más alakú stb). Alapérték: 0
- DRAGENABLE: engedélyezett legyen-e a tabok egérrel való arréb húzogatása. Alapérték: 0
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
Visszaadott érték
Az aktuális tab nevét adja vissza.
Értékadás
Egyenértékű az ACTIVE tulajdonság módosításával.
Események
Példa
<SCREEN NAME="main"> <ROW> <PAGECONTROL ACTIVE="tab_2" STYLE="0" HOTTRACK="true" COLSPAN="2"> <SCREEN TYPE="subscreen" NAME="tab_1" TITLE="Panel1"> <ROW> <CONTROL TYPE="label" TABORDER="0" CAPTION="sdaasdasdds" VALIGN="center" WIDTH="40"/> <CONTROL TYPE="date" CAPTION="dsadsadsa" NAME="ezmegaz" TABORDER="0" STARTYEAR="0" ENDYEAR="0"/> </ROW> <ROW> <CONTROL TYPE="label" TABORDER="0" CAPTION="sdfsdfsdf" VALIGN="center" WIDTH="0"/> <CONTROL TYPE="select" CAPTION="wefdsdsdsddf" NAME="bela" TABORDER="0" ROWS="0" MULTISELECT="false" WIDTH="25"/> </ROW> </SCREEN> <SCREEN TYPE="subscreen" NAME="tab_2" TITLE="Panel2"> <ROW> <CONTROL TYPE="label" TABORDER="0" CAPTION="Második tab" VALIGN="center" WIDTH="40"/> </ROW> </SCREEN> </PAGECONTROL> </ROW> </SCREEN>
Tree
A Windows-ban jól ismert fa komponens.
Tulajdonságok
- SELECTED: A kiválasztott levél azonosítója. Alapérték: 0
- WIDTH: a komponens minimális szélessége
- HEIGHT: a komponens minimális magassága
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
Visszaadott érték
Egy tömböt ad vissza, melynek két kulcsa van:
- SELECTED: a kiválasztott elem azonosítója
- OPENED: a nyitott elemek azonosítói egy tömbben
Értékadás
Egy összetett tömbbel kell megadni a fa szerkezetét:
Egy elemet, mindig egy tömb reprezentál, melynek első eleme az elem felirata, második eleme adja meg, hogy az adott elem nyitott állapotban legyen-e induláskor és harmadik eleme tartalmazza a gyerek elemek tömbjét. Az azonosítót a tömb kulcsa adja meg.
Például:
SetValue('tree1',array(1 => array( 'elem 1', false, array(5 => array( 'elem 1.1' ), 7 => array( 'elem 1.2' ), 8 => array( 'elem 1.3', false, array(13 => array( 'elem 1.3.1' ), 9 => array( 'elem 1.3.2' ), 15 => array( 'elem 1.3.3' ), ) ), 3 => array( 'elem 1.4' ), 12 => array( 'elem 1.5' ) ) ), 2 => array( 'elem 2', true, array( 9 => array( 'elem 2.1' ) ) ) ) );
Események
textfield
Egyszerű egysoros szövegbeviteli mező. A NEED tulajdonsággal rá hivatkozó komponensek használhatják az empty módosítót, amellyel megadhatjuk, hogy az üres érték igaznak legyen tekintve, azaz lehet olyan függőséget tenni, hogy nem muszáj kitöltenie, de ha kitölti, akkor az a megadott típusúnak kell, hogy legyen.
- LABEL: a felirat aláhúzott és ha valami okból a mező hibás (pl: nem töltöttük ki, hibás dátum stb.), akkor dőlt
- SUBMIT: csak akkor lesz aktív, ha az összes rá hivatkozó elem OK
Tulajdonságok
- TEXT: a megjelenítendő szöveg
- DECIMALS: a tizedes jegyek száma numerikus INPUTTYPE esetén (alapérték: 2)
- MAXCHARNUMBER: a beírható karakterek maximális száma
- AUTONEXT: amennyiben igaz, akkor ha beírás közben a karakterek száma eléri a MAXCHARNUMBER értékét, akkor a következő komponensre kerül a fókusz (alapérték: 0)
- INPUTTYPE: a beviteli mező tipusa. Jelenleg a következő tipusokat támogatja a rendszer:
- numeric, n: csak számjegyet és egyetlen "."-ot lehet beírni
- integer, i: csak számjegyeket lehet beírni
- date, d: csak dátumot lehet beírni ÉÉÉÉ-HH-NN alakban
- datemonth, dm: a dátumot csak a hónapig lehet beírni ÉÉÉÉ-HH alakban
- dateyear, dy: csak pontosan négy jegyű évszámot fogad el
- datehour, dh: a dátumot az óra megadásával együtt lehet megadni ÉÉÉÉ-HH-NN ÓÓ formában
- datemin, dn: a dátumot óra és perc megadásával együtt lehet megadni ÉÉÉÉ-HH-NN ÓÓ:PP formában
- time, ti: órát és percet lehet megadni ÓÓ:PP formában
- label, l: tulajdonképpen pont olyan, mint a LABEL komponens, csak kijelölhető / kivágható a felirata
- text, t: ez a legegyszerűbb, mivel azt írunk bele, amit akarunk
- currency, c: összeg mező; csak számokat és "."-ot lehet beírni, amit ezres tagolással tesz olvashatóbbá
- ALIGNMENT: a szöveg inputmezőn belüli elhelyezkedése; lehetséges értékei: left, right és center. Az alapérték integer
INPUTTYPEesetén right egyébként left - WIDTH: az elem minimális szélessége pixelben (alapérték: 134)
- READONLY: hasonló hatása van, mint a DISABLED-nek, csak nem szürkül el és az egérrel ki is lehet másolni belőle; InLine; (alapérték: false)
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
- CAPSLOCK: a beírt szöveg kis/NAGY betűségét befolyásolja; egyetlen karaktert lehet megadni, a következőképpen:
- U: nagybetűvel ír
- L: kisbetűvel ír
- ENTERASTAB: amennyiben igaz, akkor ebben a mezőben ha entert ütünk, az olyan, mintha tabot nyomnánk
- THOUSANDSEPARATOR: a megadott egyetlen karakter4) lesz a
numeric,integeréscurrencytípusok esetén az ezres tagolásnál használt karakter; üres string megadásával kikapcsolhatjuk ezt a funkciót (alapérték: szóköz)
Visszaadott érték
A mező értékét adja vissza egyszerű szöveges értékként.
Értékadás
Egyenértékű a TEXT tulajdonság megváltoztatásával (Lásd)
Események
calcedit
Olyan különleges számok bevitelére alkalmas mező, amely számológép funkcióval is rendelkezik. A NEED tulajdonsággal rá hivatkozó komponensek használhatják a pos és neg módosítót, amellyel megadhatjuk, Csak a pozitív, illetve csak a negatív értékeket fogadja el. Ha nincs módosító, akkor minden nem nulla értéket elfogad.
Tulajdonságok
- VALUE: a megjelenítendő szám
- DECIMALS: tizedesjegyek száma (alapérték: 2)
- DECIMALSHOW: mindig látszanak-e a tizedes jegyek - 00 formában (alapérték: 0)
- MAXCHARNUMBER: a beírható karakterek maximális száma
- WIDTH: az elem minimális szélessége pixelben (alapérték: 134)
- READONLY: hasonló hatása van, mint a DISABLED-nek, csak nem szürkül el és az egérrel ki is lehet másolni belőle; InLine; (alapérték: false)
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
- ENTERASTAB: amennyiben igaz, akkor ebben a mezőben ha entert ütünk, az olyan, mintha tabot nyomnánk
Visszaadott érték
A mező értékét adja vissza számként.
Értékadás
Egyenértékű a VALUE tulajdonság megváltoztatásával (Lásd)
Események
richtext
Többsoros formázható szövegmező, amely HTML és RTF kimenetet produkál.
Tulajdonságok
- RTF: a mező szövege
rtfformátumban; ha meg van adva, akkor ezt használja a komponens - HTML: a mező szövege
htmlformátumban; ha meg van adva, és az RTF mező üres, akkor ezt használja; a visszaolvasás nem teljes, ezért amennyiben lehetséges használjuk az RTF formátumot - TEXT: a mező szövege
textformátumban; ha sem az RTF mező, sem a HTML mező nincs megadva, akkor ezt használja a komponens - WIDTH: az elem minimális szélessége pixelben (alapérték: 134)
- HEIGHT: az elem minimális szélessége pixelben (alapérték: 100)
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
Visszaadott érték
A mező értékét adja vissza egyszerű szöveges értékként.
Értékadás
Egyenértékű a TEXT tulajdonság megváltoztatásával (Lásd)
Események
Megjegyzések
Figyeljünk oda a fillForm()-ra, mivel ha az adatbázisból visszaolvasott 't'-'f' értékre hívjuk a fillForm()-ot, akkor mindíg be lesz pipálva.
password
A textfield és a password közötti egyetlen különbség, hogy a password esetében a beírt szöveg "kicsillagozódik".
submit
Egyszerű nyomógomb, amely lehet szabványos Windows szerű, illetve egy képpel és egy felirattal reprezentált.
Tulajdonságok
- CAPTION: a gomb felirata
- LP_CAPTION: a gomb felirata a CLangpack használatával
- HOTKEY: egyetlen karakter, amely a gyorsbillentyűt adja meg (nem használhatók ékezetes karakterek)
- LP_HOTKEY: egyetlen karakter, amely a gyorsbillentyűt adja meg (nem használhatók ékezetes karakterek) a CLangpack használatával
- IMAGE: a használt kép elérési útja. Amennyiben az elérési út nem tartalmaz \ vagy / jelet, akkor a THEMES könyvtárhoz, ellenkező esetben az alkalmazás gyökér könyvtárához képest relatív. Kompatibilitási okokból elfogadja az
URLtulajdonságnak megadott értéket is. - HOVER_IM: azt a képet adja meg, amely akkor jelenik meg, amikor az egérkurzor a gomb fölött van. Alapértelmezés az
URL/IMAGE-ben definiált kép. - DOWN_IM: a gomb lenyomott állapotát szimbolizáló képet adja meg. Alapértelmezés az
URL/IMAGE-ben definiált kép. - GLYPH: a hagyományos gombon lévő kis ikon nevét adhatjuk meg vele, hasonlóan az IMAGE tulajdonsághoz, de az ikonnak 16×16 pixeles BMP-nek kell lennie; csak akkor érvényesül, ha az IMAGE tulajdonság üres (azaz hagyományos Windows gombot jelenít meg)
- DISABLED_IM: a nem engedélyezett gomb képét adja meg. Alapértelmezés az
URL/IMAGE-ben definiált kép fekete-fehérben. - SHOW_LABEL: a kép alatt csak akkor jelenik meg a CAPTION felirat, ha ez a tulajdonság (az alapértelmezett) true.
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
- AUTO_HOVER: ha igaz és a
HOVER_IMnem definiált, akkor aHOVER_IMképet aURL/IMAGEképből egy kis szín kiemeléssel állítja elő (alapérték: false)
Visszaadott érték
Nincs.
Értékadás
Egyenértékű a CAPTION tulajdonság megváltoztatásával. (Lásd)
Események
filename
Egy egyszerű egysoros beviteli mezőt jelenít meg mellette egy “Tallóz” feliratú gombbal, amivel egy fájlt lehet olvasásra betallózni. Ezzel tulajdonképpen egy fájl kijelölését végezhetjük el.
Tulajdonságok
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
- FILTER: a megnyitandó fájl kiterjesztései, ami a dialógus ablak alsó részén egy választó mezőben jelenik meg; a megadása hagyományos Windows módon történik, azaz egy feltétel egy megnevezésből és egy kiterjesztés szűrésből áll |-al elválasztva (pl: Text fájl|*.txt); több ilyen feltétel is megadható, amit szintén |-al kell elválasztani (pl: Text fájl|*.txt|Minden fájl|*.*)
Visszaadott érték
A visszaadott érték egy asszociatív tömböt, amelyben a következő cimkék vannak:
- name: a kiválasztott fájl neve elérési út nélkül
- tmp_name: a kiválasztott fájl neve teljes elérési úttal
- size: a választott fájl mérete; hiba esetén 0
Értékadás
NotImplemented hibaüzenetet eredményez.
Események
Nincs.
dirname
Egy egyszerű egysoros beviteli mezőt jelenít meg mellette egy “Tallóz” feliratú gombbal, amivel egy könyvtárat lehet betallózni.
Tulajdonságok
- STARTDIR: az induló könyvtár; speciális elem az
activedir: ez az éppen aktuális könyvtárról kezdni a tallózást - SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
Visszaadott érték
A visszaadott érték egyszerűen a szerkesztő mező értéke.
Értékadás
NotImplemented hibaüzenetet eredményez.
Események
Nincs.
label
Egyszerű felirat.
Tulajdonságok
- CAPTION: a felirat
- LP_CAPTION: a Langpackhoz tartozó felirat
- SIZE: a felirat betűmérete. Alapérték: 8
- FONTNAME: a felirat betűtipusa; alapérték a Windows alapértéke (általában MS Sans Serif)
- STYLE: a felirat betűstílusa. Szöveges mező, ahol a karakterek helye lényegtelen (azaz a “BIU” és az “UBI” egyenértékű). Lehetséges karakterek:
- “B”: félkövér (Bold)
- “I”: dőlt (Italic)
- “U”: aláhúzott (Underline)
- “S”: áthúzott (
StrikeOut)
- COLOR: a felirat szine; megadható 6 karakteres Hexa alakban, illetve a gyakoribb színeket az angol nevükről is elfogadja
- BGCOLOR: a felirat háttérszine
- LINK: úgy néz ki, mint a böngészőkben a hagyományos linkek: ha fölé visszük az egérkurzort, akkor aláhúzza a szöveget és az egérmutató is a kis kézre vált
- WIDTH: a szöveg maximális mérete pixelben; ha ennél hosszabb a szöveg, akkor töri a sort. A 0 érték kikapcsolja a sortörést. Alapérték: 0
Visszaadott érték
Nincs.
Értékadás
Egyenértékű a CAPTION tulajdonság megváltoztatásával (Lásd)
Események
codecombo
Egy kód lista és egy legördülő lista kombinációja. Olyan esetekben használatos, ahol a felhasználó megjegyezheti a kódot, de ha nem emlékszik rá, akkor kiválaszthatja listából is.
Tulajdonságok
- WIDTH: a mező minimális szélessége pixelben
- WIDTHCOMBO: a combo rész szélessége; ha a WIDTH paraméter meg van adva, akkor arányosítja a WIDTHEDIT tulajdonsággal (alapérték: 100)
- WIDTHEDIT: az edit rész szélessége; ha a WIDTH paraméter meg van adva, akkor arányosítja a WIDTHCOMBO tulajdonsággal (alapérték: 30)
- READONLY: csak olvasható mező legyen-e; InLine; (alapérték: false)
- CASEMODE: a kód mező kisbetű-nagybetű kezelésének módját szabályozza. Lehetséges értékei:
- SENSITIVE: a beírás közben csak akkor illeszkedik a listabeli elem a beírt szövegre, ha a kisbetű-nagybetűk is stimmelnek
- LISTCASE: a beírt szöveg kiegészítésre kerül akkor is, ha nem kisbetű-nagybetű helyesen írjuk be, de ekkor a listában szereplő írásmóddal lesz írva
- egyébként: a beírt szöveg kiegészítésre kerül és marad olyan írásmóddal, ahogy beírásra került
- DATASOURCE: az adatokat datasource-ból is be lehet olvasni
- SELECTED: a kiválasztott elem azonosítója
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
Visszaadott érték
A kiválasztott elem kódját (azonosítóját) adja meg.
Értékadás
Így adhatók meg az elemek. Az átadott értéknek egy tömbnek kell lennie, ahol a kulcs az elem azonosítója az érték pedig egy két elemű tömb, ahol az első elem a kód a második a megnevezés. A CDatabase osztály QueryAsArray metódusa ilyen formában adja vissza az eredményt, ha a második paramétere false (tehát a lekérdezésnek három mezője kell, hogy legyen: id, kód, név).
Események
combobox
Legördülő lista. Másik megnevezés lehet a SELECT; a két megnevezés egyenértékű.
Ha elkezdjük beírni a szöveget, a legelső illeszkedő elemre áll. A Backspace gombbal törölhetünk egy karaktert a már beírt szövegből, a Del-el pedig kitörölhetjük az egész eddig felvitt szöveget. Az F10 gomb hatására a lista lenyílik/eltűnik.
Tulajdonságok
- SELECTED: a kiválasztott elem kódja
- WIDTH: a mező minimális szélessége pixelben (alapérték: 134)
- DATASOURCE: a lista kitöltésére alkalmas adatforrás megadására alkalmas. Az adatforrásnak csak az első két oszlopát veszi figyelembe
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
- READONLY: csak olvasható mód engedélyezése; InLine; (alapérték: false)
Visszaadott érték
A kiválasztott elem kódját (azonosítóját) adja meg.
Értékadás
Így adhatók meg a lista elemei. Az átadott értéknek egy tömbnek kell lennie, ahol a kulcs az elem azonosítója az érték pedig az elem neve. A CDatabase osztály QueryAsArray metódusa ilyen formában adja vissza az eredményt, ha a második paramétere true.
Események
radiogroup
Rádiógomb sor.
Tulajdonságok
- SELECTED: a kiválasztott elem kódja
- WIDTH: a lista minimális szélessége pixelben (alapérték: 134)
- HEIGHT: a lista minimális magassága pixelben (alapérték: 97)
- DATASOURCE: a lista kitöltésére alkalmas adatforrás megadására alkalmas. Az adatforrásnak csak az első két oszlopát veszi figyelembe
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- COLUMNS: az oszlopok száma a listában; ellentétben a CheckboxList komponenssel, itt soha nincs csúszka, ezért változó mennyiségű elem esetén célszerű a STRECHING tulajdonságot használni (alapérték: 1)
- STRETCHING: ha 1, akkor a komponens magasságát automatikusan az elemek számához igazítja, ellenkező esetben a HEIGHT tulajdonságot veszi alapul (alapérték: 0)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
Visszaadott érték
A kiválasztott elem kódját (azonosítóját) adja meg.
Értékadás
Így adhatók meg a lista elemei. Az átadott értéknek egy tömbnek kell lennie, ahol a kulcs az elem azonosítója az érték pedig az elem neve. A CDatabase osztály QueryAsArray metódusa ilyen formában adja vissza az eredményt, ha a második paramétere true.
Események
checklistbox
Checkbox lista.
Tulajdonságok
- SELECTED: a kiválasztott elemek kódjai vesszővel elválasztva
- WIDTH: a lista minimális szélessége pixelben (alapérték: 134)
- HEIGHT: a lista minimális magassága pixelben (alapérték: 97)
- DATASOURCE: a lista kitöltésére alkalmas adatforrás megadására alkalmas. Az adatforrásnak csak az első két oszlopát veszi figyelembe
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLUMNS: az oszlopok száma a listában; ha 0, akkor csak egy oszlop van és a megjelenítés függőleges, egyébként a megadott számú oszlop látható és ha annyi sor van a listában, hogy az nem fér ki, akkor vízszintes csúszka jelenik meg (alapérték: 0)
- STRETCHING: ha 1, akkor a komponens magasságát automatikusan az elemek számához igazítja, ellenkező esetben a HEIGHT tulajdonságot veszi alapul (alapérték: 0)
- COLOR: a használt font színe (alapérték: black)
Visszaadott érték
A kiválasztott elemek azonosítóinak tömbje.
Értékadás
Így adhatók meg a lista elemei. Az átadott értéknek egy tömbnek kell lennie, ahol a kulcs az elem azonosítója az érték pedig az elem neve. A CDatabase osztály QueryAsArray metódusa ilyen formában adja vissza az eredményt, ha a második paramétere true.
Események
completeedit
Olyan szerkesztő mező, amihez megadhatunk egy listát, ami alapján kiegészíti az addig beírt szöveget. Annyiban különbözik a ComboBox-tól, hogy tetszőleges szöveget be lehet írni.
Tulajdonságok
- ID: a megfelelő azonosító; ha meg van adva, akkor a TEXT tulajdonságot nem veszi figyelembe
- TEXT: a beírt szöveg
- WIDTH: a mező minimális szélessége pixelben (alapérték: 134)
- LISTMODE: ha igaz, csak a megadott elemeket lehet beírni (alapérték: false)
- CASEMODE: a kisbetű-nagybetű kezelésének módját szabályozza. Lehetséges értékei:
- SENSITIVE: a beírás közben csak akkor illeszkedik a listabeli elem a beírt szövegre, ha a kisbetű-nagybetűk is stimmelnek
- LISTCASE: a beírt szöveg kiegészítésre kerül akkor is, ha nem kisbetű-nagybetű helyesen írjuk be, de ekkor a listában szereplő írásmóddal lesz írva
- egyébként: a beírt szöveg kiegészítésre kerül és marad olyan írásmóddal, ahogy beírásra került
- DATASOURCE: a lista kitöltésére alkalmas adatforrás megadására alkalmas. Az adatforrásnak csak az első két oszlopát veszi figyelembe
- READONLY: hasonló hatása van, mint a DISABLED-nek, csak nem szürkül el és az egérrel ki is lehet másolni belőle; InLine; (alapérték: false)
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
- SIMPLE: a visszatérési érték módját határozza meg (alapérték: 0)
Visszaadott érték
Ha a SIMPLE tulajdonság false, akkor az OperationData-ba egy tömb kerül, amelynek text eleme a beírt szöveget, az id eleme pedig a listából kiválasztott elem azonosítója (mint a ComboBox-nál), ha nem a listából választottunk, akkor null értéket kap.
Ha a SIMPLE tulajdonság igaz, akkor az OperationData-ba a beírt szöveg kerül.
A GetValue függvény egyszerűen a beírt szöveggel tér vissza.
Értékadás
Így adhatók meg a lista elemei. Az átadott értéknek egy tömbnek kell lennie, ahol a kulcs az elem azonosítója az érték pedig az elem neve. A CDatabase osztály QueryAsArray metódusa ilyen formában adja vissza az eredményt, ha a második paramétere true.
Események
list
Szűrőtáblázat. A szűrési feltételnek megfelelően azonnal szűr. Ha a feltétel “|” karaktert tartalmaz, akkor a “|” jelekkel határolt tagokat külön-külön értelmezi, majd az eredmények uniója lesz az eredmény.
Amennyiben egy ilyen feltétel “*” vagy ”?” karaktert tartalmaz, akkor a szokásos (DOS jellegű) kifejezésként értelmezi, azaz a “*” karakter akármennyi karaktert, míg a ”?” pontosan egy karaktert helyettesíthet.
Ha a kifejezés ”=”-el kezdődik, akkor pontos egyezést keres, ha nem, akkor szó eleji egyezést (ez azt jelenti, hogy az előbbi “*”-os keresés esetén ”=” jel nélkül a kifejezés végére mindig odarak egy “*”-ot)
Ha a kifejezés ”!”-el kezdődik, akkor a feltételt negálja, azaz a szűrés eredménye a feltételnek nem megfelelő sorok lesznek.
És most néhány példa keresési feltételre:
asd: mindenasd-al kezdődő szóra teljesül, pl:asdasd=asd: pontosan azasdszóra teljesüla*d: teljesül mindena-val kezdődő és aztánd-t tartalmazó szóra, pl:asd,alfadelta=a*d: teljesül mindena-val kezdődő ésd-re végződő szóra, pl:asd,asdasdasd|=qwe: teljesül mindenasdkezdetű szóra és aqweszóra (az egyenlőségjel miatt csak a teljes egyezés jön szóba a második esetben)?*: egy gyakori trükk, ez teljesül minden nem üres szóra!
Amennyiben a közvetlen nyomtatás és exportálás funkciót használni szeretnénk, akkor szükséges, hogy létezzenek a következő táblázatban szereplő kép fájlok (a fájlok nevei nem változtathatók):
| Fájlnév | Mire használt |
|---|---|
| list_csv.gif | A CSV exporthoz megjelenő ikon |
| list_csv_filt.gif | A szűrt eredmény CSV exportjához megjelenő ikon |
| list_print.gif | A nyomtatáshoz megjelenő ikon |
| list_print_filt.gif | A szűrt eredmény nyomtatásához megjelenő ikon |
| list_excel.gif | Az Excel exporthoz megjelenő ikon |
| list_excel_filt.gif | A szűrt eredmény Excel exportjához megjelenő ikon |
A megadott fájlokat a DIR_IMAGES konstans által meghatározott könyvtárban keresi. Ha a DIR_IMAGES konstans nincs definiálva, akkor a képeket nem olvassa be!
Lehetséges a kijelölt sort illetve sorokat a do:listanév:all illetve a do:listanév:clear akciókkal állítani, melyek minden sort illetve egyetlen sort sem jelölnek ki, ha a MULTISELECT tulajdonság engedélyezve van. Lehetőség van még a do:listanév:azonosító hívásra is, amely mindig a megadott azonosítójú sort jelöli ki.
Tulajdonságok
- BUTTONS: a megjelenő gombok nevei vesszővel elválasztva
- HOTKEY: a gombok gyorsbillentyűi elválasztójel nélkül (azaz “tuv” azt jelenti, hogy az első gombnak “t” a gyorsbillentyűje, a másodiknak “u”, a harmadiknak pedig “v”)
- CRITERIA: megjelenjenek-e a szűrő mezők. Alapérték: 1
- ENABLETOOLBUTTONS: megjelenjenek-e a nyomtató és mentő gombok. Alapérték: 1
- EXPORTFIELDS: exportáláskor exportálásra kerüljön-e a lista fejléce. Alapérték: 0
- PRINTFONTSIZE: a nyomtatáskor használt alap font méret. Alapérték: 20
- PRINTLANDSCAPE: a nyomtatás fekvő lapra történjen-e. Alapérték: true
- FIELDS: a táblázat fejlécének feliratai vesszővel elválasztva; itt adható meg az igazítás is olyan módon, hogy a középre igazításhoz egy ”:center”-t, a jobbra igazításhoz egy ”:right” részletet illesztünk a cimke végére (pl: Város,Utca,Házszám:right esetén a Házszám mező jobbra lesz igazítva)
- LP_FIELDS: a táblázat fejlécének feliratai a CLangpack használatával
- WIDTH: a táblázat oszlopainak szélessége vesszővel elválasztva
- FORMAT: a táblázat oszlopainak formátuma; jelenleg a következők lehetnek:
- b: a mező értéke egy boolean érték lehet; ha a mező értéke “1”, “t” vagy “true”, akkor az “Igen” felirat jelenik meg, ellenkező esetben a “Nem” (az üres érték üres marad)
- n: a mező értéke egy egész szám, ezt a megfelelő ezres tagolással tagolja
- c: a mező értéke összeg: két tizedesjegyre kerekített számok
- d: a mező értéke kód: jobbra rendezi; nincs ezres tagolás és az összegzősorban sem jelenik meg, de numerikusan rendezi
- minden más esetben a mezőt változatlanul kiírja
- ROWS: a táblázat sorainak száma, a táblázat magassága ebből számolódik
- CAPTION: a táblázat felirata
- LP_CAPTION: a táblázat felirata a CLangpack használatával
- COLORS: a táblázat sorainak szine illetve stílusa; a színek megadhatók a szokásos formában, illetve használható a Label STYLE tulajdonságánál használható formula; ha mindkettőt meg szeretnénk adni (tehát a színt és a stílust is), akkor a két érték közé ”:”-ot kell rakni (pl: a “red:BU” érték vörös hátterű félkövér aláhúzott sort eredményez); kétféleképpen kaphat értéket:
- SetElementAttribute függvénnyel adhatunk neki egy tömböt, ahol az egyes elemek kulcsa a sor azonosítója, az értéke pedig a sor szine lesz
- ha szöveget tartalmaz, akkor azt egy Datasource nevének tekinti, amiben az első oszlop lesz a sor azonosítója, a második pedig a szine
- CHECKBOXES: ha ez nem üres, akkor multiselect lista lesz és a felsorolt feliratokkal gombok jönnek létre
- DATASOURCE: ha megadjuk, akkor az előtte definiált adatforrásból feltölti a listát; lényegesen gyorsabb, mintha ugyanezt handler-ből tennénk
- GRID: ha igaz, akkor rácsozza a listát; alapérték: false
- DEFAULTORDER: ezzel adhatjuk meg, hogy megjelenéskor melyik oszlop szerint legyen rendezve a lista; az oszlopokat 0-tól indexeli. Amennyiben 0-nál kisebb értéket adunk meg, akkor nem rendezi a listát; alapérték: 0
- FILTERVALUES: ez adja meg a szűrő mezők kezdeti értékét; vesszővel elválasztott listát vár
- SELECTED: a kiválasztott elem azonosítója
- ENABLEFILTER: hamis érték esetén a szűrő mezőkbe való írás hatástalan (nem szűr)
- COUNTCAPTION: igaz érték esetén megjeleníti a szűrt eredmény és a teljes lista elemszámát
- ACTIVECOLOR: beállíthatjuk vele a kijelölés szinét; a szín megadható a szokásos hexadecimális alakban, a szinek nevével illetve a default értékkel, amely az alapértelmezett Windows színt állítja be (és persze ez az alapérték is)
- BACKGROUND: megadható vele egy kép elérési útja, amellyet a lista hátterében fog kirajzolni; a képet mindig a megfelelő méretűre nagyítja / kicsinyíti
- SUMROW: engedélyezett állapotban az n és c FORMAT tulajdonságú oszlopokat összesíti egy állandó legalsó sorban; mindig a szűrésnek megfelelően összesít
- PRINTSTRIPS: nyomtatásban legyen-e szürke csíkozás. Alapérték: 0
- EXCELEXPORT: amennyiben engedélyezve van, akkor közvetlen Excelbe is tud exportálni. Alapérték: 0
- EXCEL_HEADER_SIZE: Excel exportnál a fejléc betűméretét adhatjuk meg vele. Alapérték: 18
- SAVE_DEST: a rendezettség mentésének helyét adja meg; lehetséges értékei:
- S: a Shared-ba menti (a beállítás a programból való kilépésig marad meg)
- U: a UserConf-ba menti (a beállítás megmarad a programból való kilépés után is)
- egyébként: az alapértelmezés szerint az OperationData-ba menti (modulon belül marad meg)
Visszaadott érték
Az OperationData-ba a következő asszociatív tömböt helyezi:
- id: a kiválasztott elemek azonosítója egy numerikusan indexelt tömbben. Ha csak egy sor van kiválasztva, akkor azt a 0. tömbelemre rakja (tehát akkor is tömb)
- values: csak akkor, ha nem multiselect listáról van szó: a kiválasztott sor tartalma egy numerikusan indexelt tömbben. A tömbelemek minden esetben szövegesek.
- filtervalues: a szűrőmezőkbe írt kereső feltételek numerikusan indexelt tömbben
A GetValue() függvény visszatérési értéke a szűrt táblázat tartalma két dimenziós tömbben, ha a Param értéke filter, egyébként a táblázat teljes tartalma két dimenziós tömbben.
Értékadás
Így adhatók meg a lista elemei. Az átadott tömb egy két dimenziós tömb, ahol a kulcs az azonosító az elem pedig egy numerikusan indexelt tömb, amely rendre az egyes oszlopok értékeit tartalmazza. A CDatabase osztály QueryAsArray metódusa ilyen formában adja vissza az eredményt, ha a második paraméter false (ami az alapérték).
Események
customselect
Működésében hasonlít a listára, de a lapon csak egy gomb / felirat látszik, amire kattintva új ablakban jelenik meg a lista, így a lapon nem foglal el feleslegesen sok helyet a lista.
Tulajdonságok
- FIELDS: az oszlopok fejlécei vesszővel elválasztva
- DATASOURCE: az adatforrás neve
- WIDTH: az elem szélessége
- SELECTED: a kiválasztott elem azonosítója
- SHOW_NUM: a feliratként megjelenítendő oszlop száma (0-tól kezdve); (alapérték: 0)
- CAPTION: a felbukkanó ablak fejlécének felirata
- BUTTON_CAPTION: a választó gomb felirata
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
Visszaadott érték
A kiválasztott elem azonosítóját adja vissza. Ha nem lett elem kiválasztva, akkor a visszatérési érték az üres string.
Értékadás
Az értékadás teljesen megegyezik a List elem értékadásával.
Események
-
editablelist
Szerkesztő táblázat. A következő dolgokra képes:
- ENTER illetve INSERT gomb, valamint dupla kattintás hatására a kijelölt mező szerkeszthetővé válik
- a NUM + gomb illetve az utolsó sorban két LE gomb hatására a lista végére új elemet illeszt, amit ha nem szerkesztünk nem mentődik el
- ESC gombbal kilép a szerkesztő módból
- FEL, LE gombokkal (szerkesztés közben is) lehet navigálni a sorok között; ha az adott sor szerkesztett változata nem felel meg az INPUTTYPES tulajdonságban megadott tipusnak, akkor az aktív sor nem változik és a hibás elem(ek) pirossal kiemelődnek
- szerkesztő módból az ENTER hatására visszatérhetűnk normál módba, ekkor a mentés megtörténik feltéve, hogy a mezők tipusai stimmelnek; ha nem, akkor az előbbinek megfelelően nem lép ki szerkesztőmódból
- nem szerkesztő módban az ALT + FÖL/LE gombokkal a kijelölt sort “magunkkal húzhatjuk”, így a sorrendet is meg tudjuk változtatni
A fókuszt speciálisan kezeli. Kétféle módosító is megadható, amellyek különböző módokban indítják a listát: new és mod. A new módosítóval jelezhetjük, hogy új sor beszúrásával induljon a lista; utána egyetlen szám állhat, ami megadja, hogy hányadik oszlopon legyen a fókusz (nullától kezdjük a számozást). A mod módosítóval jelezhetjük, hogy szerkesztő módban induljon a lista; utána két szám állhat vesszővel elválasztva: az első mondja meg az oszlopot, a második a sort (a sort az azonosítóval kell megadni)
SetFocus('editablelist:new2'); // a lista új sor beszúrásával fog indulni és a 3. oszlopon lesz a fókusz SetFocus('editablelist:mod3,26'); // a lista a 26-os azonosítójú sor módosításával fog indulni és a 4. oszlopon lesz a fókusz
Tulajdonságok
- HOTKEY: egyetlen karakter, amely azt a gyorsbillentyűt adja meg, amelynek hatására a lista új sort visz fel
- FIELDS: a táblázat fejlécének feliratai vesszővel elválasztva
- LP_FIELDS: a táblázat fejlécének feliratai a CLangpack használatával
- WIDTH: a táblázat oszlopainak szélessége vesszővel elválasztva
- ROWS: a táblázat sorainak száma, a táblázat magassága ebből számolódik
- CAPTION: a táblázat felirata
- LP_CAPTION: a táblázat felirata a CLangpack használatával
- COLORS: a táblázat sorainak szine illetve stílusa; a színek megadhatók a szokásos formában, illetve használható a Label STYLE tulajdonságánál használható formula; ha mindkettőt meg szeretnénk adni (tehát a színt és a stílust is), akkor a két érték közé ”:”-ot kell rakni (pl: a “red:BU” érték vörös hátterű félkövér aláhúzott sort eredményez); kétféleképpen kaphat értéket:
- SetElementAttribute függvénnyel adhatunk neki egy tömböt, ahol az egyes elemek kulcsa a sor azonosítója, az értéke pedig a sor szine lesz
- ha szöveget tartalmaz, akkor azt egy Datasource nevének tekinti, amiben az első oszlop lesz a sor azonosítója, a második pedig a szine
- DATASOURCE: ha megadjuk, akkor az előtte definiált adatforrásból feltölti a listát; lényegesen gyorsabb, mintha ugyanezt handler-ből tennénk
- GRID: ha igaz, akkor rácsozza a listát; alapérték: false
- ACTIVECOLOR: beállíthatjuk vele a kijelölés szinét; a szín megadható a szokásos hexadecimális alakban, a szinek nevével illetve a default értékkel, amely az alapértelmezett Windows színt állítja be (és persze ez az alapérték is)
- INPUTTYPES: az egyes oszlopok tipusát adhatjuk meg vele. A tipusokat vesszővel elválasztva kell megadni ugyanúgy, mint a textfield esetén (pl: "n,d") kivétel ez alól, ha a tipus megadásban szerepel zárójel, ekkor a következő két tipust különböztetjük meg a kezdőbetű alapján:
- ha a tipus “s”-el kezdődik, akkor az utána zárójelek között szereplő felsorolás a megjelenő kiegészítős editbox elemeiként lesz felhasználva
- ha a tipus “l”-el kezdődik, akkor a fentieknek megfelelően kerül felhasználásra a zárójelek között utána szereplő adat, de beíráskor csak ezek az elemek lesznek beírhatók (lásd: CompleteEdit LISTMODE tulajdonság)
- READONLY: igaz érték esetén a lista nem szerkeszthető; alapérték: false
- ENABLEEXCHANGE: igaz érték esetén az ALT fel / le gombokkal a kijelölt sor mozgatható (ha nincs szerkesztő módban); alapérték: true
- ENABLENEWROW: igaz érték esetén engedélyezett új sor bevitele; alapérték: true
- ENABLEDELROW: igaz érték esetén engedélyezett sor törlése; alapérték: true
- DEFAULTS: az új sor beszúrásakor használt alapértékek vesszővel elválasztva, ha az érték “__autoinc”, akkor a fölötte lévő értéknél eggyel nagyobb számot kapja vagy egyet; alapérték: <üres string>
- STARTNEW: ha igaz, akkor úgy jön be az oldal, hogy egy új sor be van szúrva a listába és az új sor szerkesztés alatt áll
- FONTSIZE: a lista betűméretét adja meg pixelben; alapérték: 8
- FONTNAME: a lista betűtipusát adja meg; alapérték a Windows alapértéke (általában MS Sans Serif)
Visszaadott érték
Az OperationData-ban visszaadott érték ugyanolyan formátumú, mint ahogyan a SetValue függvénnyel átadtuk neki (csak nyilván tartalmazza a módosításokat is). Az átadott indexet megőrzi, az új soroknak folytonosan új sorszámot ad.
A GetValue függvény által visszaadott érték egy olyan tömb, amelynek mindig három eleme van:
- mod: a módosított sorok új értékeit tartalmazza olyan formában, ahogyan az OperationData-ba másolódnak be az adatok;
- del: a törölt elemek azonosítói felsorolva egy tömbben;
- ins: az újonnan beszúrt elemek értékeit tartalmazza olyan formában, ahogyan az OperationData-ba másolódnak be az adatok.
Értékadás
Így adhatók meg a lista elemei. Az átadott tömb egy két dimenziós tömb, ahol a kulcs az azonosító az elem pedig egy numerikusan indexelt tömb, amely rendre az egyes oszlopok értékeit tartalmazza. A kulcs ebben az esetben csak szám lehet! A CDatabase osztály QueryAsArray metódusa ilyen formában adja vissza az eredményt, ha a második paraméter false (ami az alapérték).
Események
OnChange
date,datetime
Dátum választó input elem. Jelen megvalósításban a két megnevezés egyenértékű, de ez a későbbiekben változhat.
Tulajdonságok
- FIELD1, FIELD2, FIELD3: az egyes mezők tipusa. Alapérték rendre: year, month illetve daynumber. Lehetséges értékei:
- year: évszám
- month: hónap számmal
- monthname: hónap neve kiírva
- shortmonthname: hónap neve rövidítve
- daynumber: nap
- STARTYEAR: kezdő év. Alapérték: aktuális év minusz 5 év
- ENDYEAR: befejező év. Alapérték: aktuális év plusz 5 év
- YEAR: kiválasztott év
- MONTH: kiválasztott hónap
- DAY: kiválasztott nap
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
Visszatérési érték
Egy asszociatív tömb, melynek year, month és day elemeiben rendre a kiválasztott évet, hónapot és napot kapjuk meg.
Értékadás
Kétféle módon adható érték:
- asszociatív tömbbel, amelynek
year,monthésdaya hasonló nevű tulajdonságoknak adódnak értékül. - szöveges mezővel, amelyben egy ÉÉÉÉ-HH-NN alakú dátum adható meg (SQL formátum). Amennyiben a string tartalmaz szóközt, az utána szereplő részt levágja. Amennyiben a szöveg nem tartalmaz ”-” jelet, akkor a hónap és a nap 1-re fog beállítódni. Amennyiben csak egy ”-” jel szerepel a nap alapértelmezés szerint 1-re áll be.
Események
Nincs.
memo
Tetszőleges szöveg bevitelére alkalmas több soros beviteli mező.
Tulajdonságok
- VALUE: a mező értéke szövegesen
- WIDTH: a mező minimális szélessége pixelben (alapérték: 200)
- HEIGHT: a mező minimális magassága pixelben (alapérték: 100)
- READONLY: hasonló hatása van, mint a DISABLED-nek, csak nem szürkül el és az egérrel ki is lehet másolni belőle; InLine; (alapérték: false)
- LIST: csak a SetElementAttribute függvénnyel módosítható! A megadott két dimenziós tömbből a shortcut lenyomásakor illetve a do:<komponensnev>:popup handlert lehet használva egy listát készít a következőképpen:
- a lista cimkéi az egyes elemek első elemei
- a listán ENTER-t nyomva a kiválasztott elem második eleme beszúródik és a lista bezáródik
- a listán CTRL-ENTER-t nyomva a kiválasztott elem második eleme felülírja a memo eddigi tartalmát
- a listát az ESC billentyűvel illetve bármely más komponensre kattintva zárhatjuk be
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
- WORDWRAP: törje-e a beírt sorokat (alapérték: 0)
- SCROLLBARS: milyen scrollbar legyen a szöveg mezőn. Az értéke egy szöveg, ami a következő lehet:
- vert, v: függőleges gördítő sáv
- horiz, h: vízszintes gördítő sáv; ha a WORDWRAP engedélyezve van, akkor nincs hatása
- both, b: mindkét gördítős sáv megjelenik
- egyébként nincs gördítő sáv; ez az alapérték is
Visszatérési értéke
A mező értéke szövegesen.
Értékadás
Egyenértékű a VALUE tulajdonság megváltoztatásával (Lásd)
Események
Nincs.
checkbox
A nevének megfelelően egy checkbox-ot (jelölőnégyzetet) reprezentál.
Tuljadonságok
- CAPTION: felirat
- HOTKEY: a checkbox gyorsbillentyűje
- CHECKED: bepipált állapotban van, vagy sem
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
Visszatérési érték
A visszatérési érték boolean, amely csak akkor igaz, ha a jelölőnégyzet be volt pipálva.
Értékadás
Egyenértékű a CHECKED tulajdonság megváltoztatásával, azzal a kitétellel, hogy amennyiben az átadott érték true, akkor “1” értéket kap, ellenkező esetben “0” értéket. (Lásd)
Események
radiobutton
A nevének rádiógombot reprezentál.
Tuljadonságok
- CAPTION: felirat
- HOTKEY: a checkbox gyorsbillentyűje
- CHECKED: bepipált állapotban van, vagy sem
- SIZE: a használt font alapmérete, melyet a CTRL + / CTRL - billentyűkkel illetve a magnify beállítással még módosíthatunk (alapérték: 8)
- FONTNAME: a használt font neve
- COLOR: a használt font színe (alapérték: black)
Visszatérési érték
A visszatérési érték boolean, amely csak akkor igaz, ha a rádiógomb ki van jelölve.
Értékadás
Egyenértékű a CHECKED tulajdonság megváltoztatásával, azzal a kitétellel, hogy amennyiben az átadott érték true, akkor “1” értéket kap, ellenkező esetben “0” értéket. (Lásd)
Események
horizline
Egy vízszintes vonalat rajzol. A magassága elhanyagolható (2 pixel). Vizuális elválasztásra használható.
Tulajdonságok
Nincs.
Visszatérési érték
Nincs.
Értékadás
NotImplemented hibaüzenetet eredményez.
Események
Nincs.
verticalline
Egy függőleges vonalat rajzol. A szélessége elhanyagolható (2 pixel). Vizuális elválasztásra használható.
Tulajdonságok
Nincs.
Visszatérési érték
Nincs.
Értékadás
NotImplemented hibaüzenetet eredményez.
Események
Nincs.
video
Egy videót játszik le.
Tulajdonságok
- FILENAME: a lejátszandó fájl neve
- AUTOPLAY: automatikusan induló lejátszás
Visszatérési érték
Nincs.
Értékadás
NotImplemented hibaüzenetet eredményez.
Események
Nincs.
capture
Videórögzítésre alkalmas komponens. A rögzítés elindítása külsőleg lehetséges egy do:<komponensnev>:start “handler”-rel, a leállításra pedig a do:<komponensnev>:stop handlert lehet használni. Egy képet a do:<komponensnev>:snap handlerrel lehet készíteni.
Tulajdonságok
- WIDTH: az előnézeti kép szélessége. Alapérték: 320
- HEIGHT: az előnézeti kép magassága. Alapérték: 240
- FRAMERATE: a mentendő videó framerate-ája. Alapérték: 25
- FILENAME: a cél fájl neve. Alapérték: c:\test.avi
- SNAPFILE: az egyedi kép(ek) neve(i); a név tartalmazhat %n paramétert, amit 1-től kezdve egy 5 jegyű sorszámmal helyettesít a rendszer. A formátumot a kiterjesztés alapján dönti el. Felismeri a jpg, jpeg, gif és png értékeket (ha a megfelelő library-k bele vannak fordítva az alkalmazásba) Alapérték: c:\test%n.jpg
- TEMPFILENAME: az ideiglenes fájl neve; minden esetben használ ideiglenes fájlt és csak a mentés befejezésekor másolja a
FILENAMEtulajdonságban megadott helyre. Alapérték: <tmpdir>\temp.avi - VIDEOINPUT: a forrás eszköz neve; ha nem adjuk meg, akkor a
UserConftömbben próbálja megkeresni, ha ott sincs, de csak egy lehetséges forrás van, akkor azt választja, ha több van, akkor egy kis beállító lap jelenik meg az előnézeti kép helyén, amely aUserConftömbbe menti az eredményt - VIDEOCODEC: a használt codec neve; ha none-t adunk meg, akkor tömörítetlenül ment; ha üres, akkor a
VIDEOINPUTtulajdonságnál leírtak érvényesek
Visszatérési érték
Nincs.
Értékadás
NotImplemented hibaüzenetet eredményez.
Események
OnChange (a rögzítés befejeztével következik be) OnButtonPress (egyedi kép készítésekor következik be)
Példa
Screen XML:
<?xml version="1.0" encoding="iso-8859-2"?> <SCREEN NAME="default" TITLE="" TEMPLATE="" SIZEX="1" SIZEY="1"> <ROW> <CONTROL TYPE="capture" COLSPAN="2" name="cap"/> </ROW> <ROW> <CONTROL TYPE="submit" name="start" CAPTION="start"/> <CONTROL TYPE="submit" name="stop" CAPTION="stop"/> </ROW> </SCREEN>
Process XML:
<?xml version="1.0" encoding="iso-8859-2"?> <PROCESS NAME=""> <NODE NAME="default" SCREEN="default.screen"> <EVENT TYPE="onLoad" HANDLER="onload.handler"/> <EVENT TYPE="onButtonPress" SENDER="start" HANDLER="do:cap:start"/> <EVENT TYPE="onButtonPress" SENDER="stop" HANDLER="do:cap:stop"/> </NODE> </PROCESS>