home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2001 July
/
Chip_2001-07_cd1.bin
/
ctenari
/
Cerny
/
INSTALLF.EXE
/
rar
/
FREETFB
/
DOC
/
MENUFB.DOC
< prev
next >
Wrap
Text File
|
2001-03-05
|
3KB
|
76 lines
~16|0|05 MenuFB.fbl
|1|05 M.1 NewMenu;
P²ipraví a nastaví pot²ebné prom╪nné a datové pole
na poƒáteƒní hodnoty.
|1|05 M.2 MenuItem('Název poloºky',1,
|1|05 'informace k poloºce');
V okénkovém menu màºe b∞t maximáln╪ 20 poloºek.
Uvede se nejprve název poloºky v menu, dále hodnota
1 nebo 0 (1 = p²ed textem bude τipka vyjad²ující
dalτí volbu, 0 = p²ed textem bude pouze mezera).
Ke kaºdé poloºce je moºné uvést struƒnou informaci
o délce maximáln╪ 40 znakà, která se bude vypisovat
ve spodním informaƒním ²ádku úvodní plochy kliknutím
lev∞m tlaƒítkem myτi na název poloºky.
Aktivování poloºky se provede kliknutím prav∞m
tlaƒítkem myτi na název poloºky.
|1|05 M.3 MenuLine;
Linka odd╪lující skupinu poloºek v menu. P²i vyhodnocení
zvolené poloºky v menu se tato linka neaktivuje, ale
zapoƒítává se do po²adí poloºek v menu.
|1|05 A.1 AssignMenu(SS,TS,BP);
Procedura naplní datové pole a pot²ebné prom╪nné zadan∞mi
údaji stanoví barvu okna menu podle údajà SS=sv╪tl∞ stín,
TS=tmav∞ stín a BP=barva plochy okna menu a ƒeká na aktivaci.
|1|05 O.1 OpenMenu(X,Y);
Aktivuje menu na pozicích X a Y, které urƒují lev∞ horní
roh okénka menu. Uchová plochu, kterou bude p²ekr∞vat.
|1|05 R.1 RepMenu(X,Y);
Pouºije se v p²ípad╪ volání dalτího podmenu nebo jiné funkce,
po které má b∞t pàvodní menu znovu aktivováno pro volbu dalτí
jiné poloºky. Pro podrobn╪jτí pochopení si dob²e prohlédn╪te
soubor DEMOMENU.FBS v podadresá²i FBS.
|1|05 S.1 SelectItem
Funkce obsluhuje aktivované menu. Kliknutím levého tlaƒítka
na poloºku v menu tuto zv∞razní a vypíτe ve spodním informaƒním
²ádku plochy p²ípadnou informaci k poloºce. Po kliknutí prav∞m
tlaƒítkem myτi na název poloºky v menu ukonƒí svou ƒinnost
a po²adí zvolené poloºky vrací jako ƒíselnou hodnotu. Tu je
moºné po p²evedení do jiné ƒíselné prom╪nné dále zpracovávat.
P²íklad:
|0|09 NewMenu;
|0|09 MenuItem('Nahrát',1,'Nahraje vybran∞ soubor');
|0|09 MenuItem('Uloºit',1,'Uloºí tento soubor');
|0|09 MenuLine;
|0|09 MenuItem('Konec',1,'UkonĒ program');
|0|09 AssignMenu(MLBlue,Blue,LBlue);
|0|09 OpenMenu(50,30);
|0|09 :loop>
|0|09 let VyberMenu : SelectItem;
|0|09 case VyberMenu part
|0|09 case>1 :> {..nahrání souboru...} :<
|0|09 case>2 :> {..uloºení souboru...} :<
|0|09 {poloºka 3 se ignoruje, nebo£ je pouze linka}
|0|09 case>4 :> {..ukonƒení programu...} :<
|0|09 :case<
|0|09 :loop< VyberMenu = 0;
|0|09 CloseMenu(50,30);
|0|09 FilInfoLine;
|1|05 C.1 CloseMenu(X,Y);
Funkce po ukonƒení okénkového menu vrátí zp╪t plochu, kterou
dosud p²ekr∞valo. Protoºe je moºné vytvá²et i dalτí podmenu,
musí p²íkaz CloseMenu obsahovat pozice X a Y, podle kter∞ch jednotka
pozná, kterou plochu pàvodního pozadí má vrátit (shodné jako u
OpenMenu).