![]() |
||||||||||||||||||||||||||||||||||||
![]() |
![]() ![]() ![]() ![]() |
![]() |
||||||||||||||||||||||||||||||||||
![]() |
Vizuální návrh obrazovek terminálůPři programování řídicích systémů s ovládacím panelem a displejem, případně při programování inteligentních terminálů, jsme vždy postaveni před úlohu návrhu a implementace uživatelského rozhraní. Čím dokonalejší zobrazovací prostředky řídicí systém poskytuje, tím je více uživatelsky přívětivý, ale také tím více klade nároky na implementaci uživatelského rozhraní, které dokáže dané zobrazovací prostředky efektivně využít. Problematika implementace uživatelského rozhraní dostane zcela nový rozměr, přejdeme-li od alfanumerického zobrazování k zobrazování grafickému. S novými zobrazovacími možnostmi narůstá objem programátorské práce, kterou je třeba návrhu a implementaci uživatelského rozhraní věnovat. Na druhou stranu je však třeba říci, že při programování obrazovek terminálu vystačíme s použitím určité množiny výrazových prostředků, které se na obrazovkách opakují. Programování obrazovek se tak stává rutinní záležitostí, a proto je zde vždy snaha si tuto rutinní činnost maximálně zjednodušit. Ve zbývající části tohoto článku si ukážeme, jakým způsobem se této úlohy zhostila firma SofCon® s.r.o., která je výrobcem řídicích systémů, resp. terminálů TERM10 a KOMPAKT. ![]() Pro naprogramování řídicích systémů TERM10 a KOMPAKT lze použít firemní programové prostředí KIT-Builder. Programovacím jazykem tohoto prostředí je jazyk KIT-Basic, který obsahuje jazykové konstrukce pro definování grafických obrazovek terminálu. V prostředí KIT-Builder je implementován základní Menu systém obrazovek terminálu, proto se implementace uživatelského rozhraní skládá z návrhu obsahu jednotlivých obrazovek. Pro vizuální grafický návrh obsahu jednotlivých obrazovek byl firmou SofCon® s.r.o. vyvinut program KbdLCD, pracující pod o.s. MS Windows 95 (98/NT). Výstupem tohoto programu je soubor obsahující definice obrazovek terminálu celého projektu v jazyce KIT-Basic. Program KbdLCD pracuje s obrazovkami celého projektu, definuje obsahy banků podkladových bitmap obrazovek a obsahy banků fontů pro výpis na LCD displej. Obsahy banků si lze prohlížet s náhledem obrázku bitmapy, v případě banků fontů s náhledem zobrazení zadaného textu. Základní pracovní plochou programu KbdLCD je návrhové okénko obrazovky terminálu. V levém horním rohu okénka leží ohraničená oblast odpovídající velikosti cílového LCD displeje v bodech (pixel). Zbývající část okénka můžeme používat jako pracovní plochu. Zobrazení v návrhovém okénku lze zvětšit 2x a 4x (zoom), případně lze zobrazenou část návrhového okénka posouvat pomocí posuvníků po stranách okénka. Vlastní návrh obsahu obrazovky spočívá v umísťování tzv. LCD objektů na plochu návrhového okénka a v definování jejich parametrů. Existují dvě základní kategorie LCD objektů. Do první kategorie patří LCD objekty, které mají výslednou grafickou reprezentaci na displeji, do druhé kategorie patří LCD objekty bez výsledné grafické reprezentace na displeji. LCD objekty s grafickou reprezentací jsou pak na ploše návrhového okénka zobrazovány stejně, jako budou zobrazovány na cílovém displeji. Mezi tyto objekty patří LCD objekty pro výpis textů a vektorové grafiky. Do kategorie objektů bez výsledné grafické reprezentace patří LCD objekty jazykových konstrukcí Kit-Basicu. Tyto objekty jsou zobrazovány jako tlačítka a zpravidla jsou umísťovány na pracovní plochu mimo ohraničenou oblast LCD displeje. Přístup k parametrům LCD objektů je možný buď dvojitým kliknutím levým tlačítkem myši na LCD objekt, nebo pravým tlačítkem přes výběr položky Parametry z vyskakovacího menu. Základními parametry každého LCD objektu jsou jeho souřadnice na ploše LCD displeje. Jazyk KIT-Basic dovoluje tyto souřadnice definovat také prostřednictvím hodnoty proměnné. Proto v dialogu s parametry LCD objektu je možno vždy pro konkrétní souřadnici zadat také identifikátor proměnné, která bude hodnotu souřadnice určovat při běhu programu. Pokud nebude identifikátor zadán, použije se vždy absolutní hodnota souřadnice. Pro zobrazení na ploše návrhového okénka je vždy používána absolutní hodnota souřadnice. LCD objekty lze označovat a s označenými objekty provádět různé operace. Mezi základní operace patří kopírování objektů přes schránku (clipboard). Vyskakovací menu LCD objektů obsahuje příkazy pro uzamknutí objektů na ploše návrhového okénka, příkazy pro zarovnání pozic LCD objektů vůči sobě i vůči ploše LCD displeje a příkazy pro vzájemné srovnání rozměrů LCD objektů. Výsledné zobrazení návrhového okénka se skládá ze zobrazení pracovních vrstev. Zobrazení pracovní vrstvy lze zapnout nebo vypnout tlačítkem na nástrojové liště. Existují tři základní pracovní vrstvy, které odpovídají implementaci zobrazování v prostředí KIT-Builder. Jsou to vrstva podkladové bitmapy, vrstva textových výpisů a vrstva vektorové grafiky. Množina pracovních vrstev je dále rozšířena o tzv. case vrstvy. Tyto vrstvy slouží pro umístění LCD objektů, které patří do jednotlivých variant příkazu case. Společně se základními pracovními vrstvami může být zobrazena pouze jedna vybraná case vrstva. Přepínáním zobrazení case vrstev můžeme tudíž simulovat výsledné zobrazení, které bude při běhu programu řízeno hodnotou řídicí proměnné příkazu case. Jazyková konstrukce příkazu case je implementována jako LCD objekt bez grafické reprezentace, který jako své parametry obsahuje identifikátor řídicí proměnné a seznam variant spolu s hodnotou konstanty, která tuto variantu určuje. Tělo příkazu varianty je zadáno jako odkaz na case vrstvu, ve které leží LCD objekty této varianty. Abychom zbytečně neplýtvali omezeným množstvím case vrstev pro jednoduchá zobrazení textu dle řídicí proměnné příkazu case, byl zaveden LCD objekt Enum. Tento LCD objekt je na ploše návrhového okénka zobrazen jako text některé vybrané hodnoty (varianty) a ve svých parametrech obsahuje seznam textových reprezentací hodnot výčtového typu. Tlačítkem na nástrojové liště můžeme okénko přepnout do režimu návrhu obrazovky nápovědy. Práce v režimu návrhu obrazovky nápovědy je stejná jako v režimu návrhu základní obrazovky. Sada LCD objektů s grafickou reprezentací obsahuje následující objektyA) Textové výpisy ve zvoleném fontu
B) Vykreslení vektorové grafiky
C) Komplexní grafické objekty
Sada LCD objektů bez grafické reprezentace obsahuje následující objekty
Do uživatelského rozhraní programu KbdLCD je začleněno spouštění překladače jazyka KIT-Basic a spouštění zavaděče výsledného programu do řídicího systému, resp. terminálu. Program KbdLCD je vybaven jednoduchým editorem zdrojového kódu programu s možností automatického vyhledání místa chyby hlášené překladačem KIT-Basicu. Vizuální programování pomocí programu KbdLCD nijak neomezuje používání výrazových prostředků jazyka KIT-Basic. Program KbdLCD dovoluje do těla některých příkazů implementovaných LCD objekty psát přímo zdrojový kód jazyka KIT-Basic. Program KbdLCD Vám dovolí zůstat programátory a přitom pracovat s náhledem obrazovky výkonnými nástroji vektorového grafického editoru. Nikdy předtím nebyla tvorba obrazovek terminálu pro prostředí KIT-Builder tak snadná. |
![]() |
||||||||||||||||||||||||||||||||||
![]() |