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.
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 NoName lesz. 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
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)
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.
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)
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, middle vagy center, 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)
NEED: azt lehet megmondani, hogy az adott elem mikor lehet engedélyezve. A megadásra egy nagyon egyszerű logikai kifejezést használhatunk, ami csak elemek neveiből
1), a |, &
2) és ! jelekből, valamint zárójelekből állhat. A precedencia nem teljesen logikus
3), ezért célszerű zárójelezni!
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.
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
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)
Az aktuális tab nevét adja vissza.
Egyenértékű az ACTIVE tulajdonság módosításával.
<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>
A Windows-ban jól ismert fa komponens.
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
OPENED: a nyitott elemek azonosítói vesszővel elválasztva (a
FillForm függvény működéséhez kell); felülbírálja a
SetValue-val beállított értékeket
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)
Egy tömböt ad vissza, melynek két kulcsa van:
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.
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'
)
)
)
)
);
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
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 INPUTTYPE eseté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 karakter
4) lesz a
numeric,
integer és
currency tí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)
A mező értékét adja vissza egyszerű szöveges értékként.
Egyenértékű a TEXT tulajdonság megváltoztatásával (Lásd)
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.
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
A mező értékét adja vissza számként.
Egyenértékű a VALUE tulajdonság megváltoztatásával (Lásd)
Többsoros formázható szövegmező, amely HTML és RTF kimenetet produkál.
RTF: a mező szövege
rtf formátumban; ha meg van adva, akkor ezt használja a komponens
HTML: a mező szövege
html formá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
text formá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)
A mező értékét adja vissza egyszerű szöveges értékként.
Egyenértékű a TEXT tulajdonság megváltoztatásával (Lásd)
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.
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".
Egyszerű nyomógomb, amely lehet szabványos Windows szerű, illetve egy képpel és egy felirattal reprezentált.
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
URL tulajdonsá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_IM nem definiált, akkor a
HOVER_IM képet a
URL/
IMAGE képből egy kis szín kiemeléssel állítja elő (alapérték:
false)
Egyenértékű a CAPTION tulajdonság megváltoztatásával. (Lásd)
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.
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|*.*)
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
NotImplemented hibaüzenetet eredményez.
Egy egyszerű egysoros beviteli mezőt jelenít meg mellette egy “Tallóz” feliratú gombbal, amivel egy könyvtárat lehet betallózni.
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)
A visszaadott érték egyszerűen a szerkesztő mező értéke.
NotImplemented hibaüzenetet eredményez.
CAPTION: a 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:
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
Egyenértékű a CAPTION tulajdonság megváltoztatásával (Lásd)
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.
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)
A kiválasztott elem kódját (azonosítóját) adja meg.
Í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).
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.
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)
A kiválasztott elem kódját (azonosítóját) adja meg.
Í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.
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)
A kiválasztott elem kódját (azonosítóját) adja meg.
Í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.
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)
A kiválasztott elemek azonosítóinak tömbje.
Í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.
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.
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)
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.
Í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.
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: minden asd-al kezdődő szóra teljesül, pl: asdasd
=asd: pontosan az asd szóra teljesül
a*d: teljesül minden a-val kezdődő és aztán d-t tartalmazó szóra, pl: asd, alfadelta
=a*d: teljesül minden a-val kezdődő és d-re végződő szóra, pl: asd, asdasd
asd|=qwe: teljesül minden asd kezdetű szóra és a qwe szó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.
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)
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.
Í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).
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.
FIELDS: az oszlopok fejlécei vesszővel elválasztva
-
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)
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.
Az értékadás teljesen megegyezik a List elem értékadásával.
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
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:
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)
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.
Í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).
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.
FIELD1, FIELD2, FIELD3: az egyes mezők tipusa. Alapérték rendre: year, month illetve daynumber. Lehetséges értékei:
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)
Egy asszociatív tömb, melynek year, month és day elemeiben rendre a kiválasztott évet, hónapot és napot kapjuk meg.
Kétféle módon adható érték:
Tetszőleges szöveg bevitelére alkalmas több soros beviteli mező.
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
A mező értéke szövegesen.
Egyenértékű a VALUE tulajdonság megváltoztatásával (Lásd)
A nevének megfelelően egy checkbox-ot (jelölőnégyzetet) reprezentál.
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)
A visszatérési érték boolean, amely csak akkor igaz, ha a jelölőnégyzet be volt pipálva.
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)
A nevének rádiógombot reprezentál.
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)
A visszatérési érték boolean, amely csak akkor igaz, ha a rádiógomb ki van jelölve.
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)
Egy vízszintes vonalat rajzol. A magassága elhanyagolható (2 pixel). Vizuális elválasztásra használható.
NotImplemented hibaüzenetet eredményez.
Egy függőleges vonalat rajzol. A szélessége elhanyagolható (2 pixel). Vizuális elválasztásra használható.
NotImplemented hibaüzenetet eredményez.
NotImplemented hibaüzenetet eredményez.
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 FILENAME tulajdonságban megadott helyre. Alapérték: <tmpdir>\temp.avi
VIDEOINPUT: a forrás eszköz neve; ha nem adjuk meg, akkor a UserConf tö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 a UserConf tö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 VIDEOINPUT tulajdonságnál leírtak érvényesek
NotImplemented hibaüzenetet eredményez.
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>