MSW Logo / Slikovni vmesnik
Kot v večini drugih programskih jezikov lahko tudi v Logu svojemu programu
dodamo slikovni uporabniški vmesnik (Graphical User Interface = GUI).
To pomeni, da lahko gradimo svoja pogovorna okna, ki lahko vsebujejo
običajne nadzorne elemente, ki jih poznamo iz okolja Windows
(polja za vnašanje besedila, gumbi, elementi za izbiranje, drsniki, ...).
S tem poenostavimo uporabo programa, saj uporabniku ni treba poznati
množice ukazov in njihovih parametrov.
Pri sestavljanju slikovnega vmesnika moramo vsakemu predmetu določiti:
- ime
- ime prednika (očeta)
- koordinati levega zgornjega oglišča (zaslonski ali želvin koordinatni sistem)
- velikost
Nekateri predmeti pa potrebujejo še dodatne podatke, kot so:
- naslov okna
- besedilo, ki se izpiše na gumbu
- ukazi, ki se izvršijo, ko pritisnemo na gumb
- ukazi, ki se izvršijo, ko spremenimo položaj drsnika
- ...
Glavne pomanjkljivosti slikovnega vmesnika v Logu so:
- ne moremo sestavljati svojih grafičnih predmetov (omejeni smo na uporabo obstoječih)
- tudi pri obstoječih grafičnih predmetih ne moremo spreminjati njihovih lastnosti,
kot so pisava, barva, ...
- lovimo lahko samo nekatere dogodke (klik na gumb, sprememba položaja drsnika)
Okna
Okna so lahko dveh vrst: modalna ali nemodalna. Edina razlika
med njima je ta, da v primeru modalnega okna uporabnik v Logu ne more početi
ničesar drugega, dokler okna ne zapre. Če pa dela z običajnim (nemodalnim) oknom,
lahko vmes počne, kar želi (lahko uporablja tudi več oken hkrati). Vsa okna, ki so
v Logu že definirana (razen urejevalnika besedil) so modalna.
Že definirana okna
- messagebox
(okno za izpis kratkega sporočila)
- yesnobox
(okno za izpis vprašanja, na katerega lahko odgovorimo z Yes ali No)
- selectbox
(okno, ki nam omogoči izbiro med več možnostmi)
- questionbox
(okno za izpis vprašanja, kjer lahko vtipkamo poljuben odgovor)
- dialogfileopen
(standardno okno za izbiro že obstoječe datoteke)
- dialogfilesave
(standardno okno za določanje imena in področja za novo datoteko)
- windowfileedit
(urejevalnik znakovnih datotek)
Običajna (nemodalna) okna
Modalna okna
Drugi grafični predmeti
Besedilo
Gumbi
Seznami
Polja za vnos besedila
Drsniki
Skupine
Stikala
Izbirna stikala
Odkrivanje napak
Primeri