Principy grafických uživatelských rozhraní

Materiály: 01_itu_introduction (téměř celé), 03_itu_dialog (okrajově)

Komunikační kanály

Komunikačními kanály jsou způsoby komunikace člověka a stroje. Takže vlastně všechny možné periferní zařízení. Obrazovka, klávesnice, myš, tiskárna, reproduktory… Všechny jsou založené na lidských smyslech – zrak, hmat, sluch, chuť a čich (ty poslední dva zatím nenašly uplatnění).

Co víc k tomu říct?

Mody komunikace

Jsou dva základní typ módů komunikace PC–uživatel:

Aktivní: uživatel určuje aktivně práci počítače

Pasivní: počítač v klíčových momentech vznese dotaz a uživatel odpovídá

Mód komunikačního rozhraní je tedy stav, kdy počítač reaguje jedinečným způsobem na vstupy od uživatele. Střídání více módů je obvykle nepřehledné, proto by se každá aplikace měla snažit módy příliš často aktivně neměnit.

Aktivní komunikace

Rozhraní používající aktivní komunikaci je například panel nástrojů v malování. Uživatel sám vybírá nástroj když se mu chce a pak následně uživatel sám určuje, kam se bude kreslit. Práce v příkazové řádce je aktivní: uživatel se rozhoduje, co napíše, jakou dávku spustí.

Pasivní komunikace

Pasivní komunikací se myslí stav, kdy počítač vznese dotaz a uživatel na něj odpovídá. Toho lze v GUI dosáhnout například dialogovými boxy.

Dialogové boxy se dělí na

modální (modal) – prioritní v aplikaci, uživatel musí odpovědět než může pokračovat v práci

nemodální (non-modal) – neprioritní, uživatel může pokračovat v práci a na dialog odpovědět později

systémově modální (system-modal) – mají prioritu nad aplikacemi (např. ve woknech „vypnout“ otevře systémově modální dialog)

Jak se implementuje modalita?

Při „spuštění“ „modálního“ boxu se modality dosahuje tím, že se zabrání průchodu zpráv od uživatele do „níže položených oken“ v hierarchii oken. Pro přehlednost někdy zbytek aplikace „zašedne“.

U příkazové řádky je ukázkou pasivní komunikace například dotaz „opravdu si přejete smazat soubor? Y/N“.

Systémy řízené událostmi

Event-driven programming

Je to v podstatě základní princip práce s GUI. Obecně jde o to, že je tok programu řízen různými událostmi (vstupy ze senzorů, kliknutí myší, tisknutí klávesy). V programu existuje nějaký naslouchač (listener, nekonečná smyčka), který čeká na přijmutí události. Po jejím přijmutí provede nějakou akci. U hardwaru je obdobně funguje systém přerušení.

Standardní prvky rozhraní

Okna, dialogboxy a dialogy

Dialogový box „je stavebnice“

Obsahuje stavební prvky

Prvky jsou vesměs okny

Někdy nejsou okny

Typy prvků

Tlačítko (button)

Nápis a editační řádek (label, edit box)

Rádiová tlačítka (radio button(s))

Zatrhávátko (check box)

Seznam (list box)

Seznam s řádkem (combo box)