P R O G R A M U J E M EAko <strong>na</strong> nápoveï / 8. èasObr. 3Testovanie aktuálneho stavu zaškrtávacieho po¾a sa väèšinou viae <strong>na</strong> u<strong>sk</strong>utoènenie inej akcie (<strong>na</strong>pr.klepnutie <strong>na</strong> tlaèidlo OK). Práve obsluha udalosti, keï pouívate¾ klepne <strong>na</strong> tlaèidlo OK, je pravdepodob−ne <strong>na</strong>jvhodnejším miestom <strong>na</strong> testovanie stavu zaškrtávacieho po¾a.Pokia¾ budete chcie vyuíva pomocníka Office ako sprievodcu, je viac ako pravdepo−dobné, e budete chcie zobrazi i ïalšie tlaèidlá, nielen jediné tlaèidlo OK. Pridanie doda−toèných tlaèidiel do bublinového ok<strong>na</strong> vám umoní vlastnos Button objektu Balloon.Vlastnos môe obsahova rôzne kombinácie konštánt, s ktorými môete smelo experimen−tova. Preštudujte si <strong>na</strong>sledujúci príklad.With Assistant.NewBalloon.Heading = "Správa".Text = "Naozaj chcete ukonèi aplikáciu?".Icon = msoIconAlertInfo.Button = msoButtonSetYesNoCancel.ShowEnd WithBLIŠÍ POH¼AD NA OBJEKT ASSISTANT. Po doterajších <strong>sk</strong>úsenostiach s objek−tom Assistant sa môeme blišie pozrie nielen <strong>na</strong> samotný objekt Assistant, ale i <strong>na</strong> ïal−šie vnorené objekty a kolekcie objektov (obr. 3).Objekt Assistant je vám u dobre známy. Vnoreným objektom je objekt Balloon, ktorýpredstavuje bublinové okno asistenta. Objekt Balloon môe obsahova dve kolekcie objek−tov: BalloonCheckBoxes a BalloonLabels. Kolekcia objektov BalloonCheckBoxes môeobsahova 1 a 5 objektov typu BalloonCheckBox. Podobná je situácia i pri ïalšej kolekciiobjektov s názvom BalloonLabels. I tá môe obsahova maximálne 5 objektov typuBalloonLabel. Celá uvedená objektová štruktúra sa <strong>na</strong>chádza v ove¾a širšej kolekcii objektovMicrosoft Office Objects. Z toho vyplýva, e objekt Assistant je zdie¾aný medzi všetkýmiaplikáciami Office, môete ho teda poui z ktorejko¾vek z nich.KOMPATIBILITA ASISTENTA SO STARŠÍMI VERZIAMI OFFICE. Na záver sipovieme nieèo o spätnej kompatibilite pomocníka Office XP s predchádzajúcimi verziamibalíka Office (teda s Office 97 a 2000). Èo sa týka Office 2000, dá sa poveda, e ide o tak−mer stopercentnú kompatibilitu. Všetky príklady, ukáky a fragmenty programových kódov,s ktorými ste sa mohli doteraz stretnú, by mali bez väèších problémov pracova bezchybnei v prostredí Office 2000. Isté problémy však môu <strong>na</strong>sta u pouívate¾ov balíka Office 97.Presnejšie, problém by mohol vzniknú u pri pokuse o zvidite¾nenie pomocníka. Pomocníkv Office 97 toti nedisponuje vlastnosou On, ktorá by ho „zapí<strong>na</strong>la“. Je tu iba vlastnosVisible, ktorú je moné <strong>na</strong>stavi <strong>na</strong> hodnotu True a asistenta tak zobrazi alebo ju <strong>na</strong>stavi<strong>na</strong> hodnotu False a pomocníka <strong>sk</strong>ry. Pokia¾ teda budete ma <strong>na</strong> pamäti uvedenú <strong>sk</strong>utoè−nos, budete vedie i pomocníka verzie 97 ¾ahko aktivova èi deaktivova. Nanešastie prob−lémom nie je ani tak postup zobrazenia pomocníka, ako prenos programového kódu z ver−zie Office 97 do novších verzií 2000 a XP. Práve preto, e obe novšie verzie pouívajú priaktivácii asistenta vlastnos On, je potrebné, aby bol starší zdrojový kód adekvátne modifi−kovaný tak, aby spåòal kritériá novších verzií. Ako sme si u povedali, v novších verziách balí−ka Office nemusí staèi <strong>na</strong> zobrazenie pomocníka <strong>na</strong>stavenie vlastnosti Visible <strong>na</strong> hodnotuTrue. Monoe budete ma šastie (v Office 2000/XP) a pomocník sa i po pouití tohto riad−ka kódu objaví <strong>na</strong> obrazovke:Assistant.Visible = TrueRozriešenie je pomerne jednoduché. Pouívate¾ pravdepodobne pri práci s aplikácioupouíva asistenta, a preto je vlastnos On u <strong>na</strong>stavená <strong>na</strong> hodnotu True. No iná situácia<strong>na</strong>stane v prípade, keï pouívate¾ pomocníka deaktivoval (vtedy vlastnos On obsahuje hod−notu False). Uvedený riadok zdrojového kódu by nezmohol vôbec niè. Pomôe <strong>na</strong>stavenievlastnosti On <strong>na</strong> hodnotu True, èím sa vlastnos Visible automaticky <strong>na</strong>staví <strong>na</strong> hodnotuTrue a pomocník sa objaví <strong>na</strong> obrazovke poèítaèa.Ján HanákDetailnejší poh¾ad <strong>na</strong> objektovú štruktúru objektu AssistantV tejto èasti seriálu si povieme o radách a zásadách, ktoré by ste mali ma <strong>na</strong> pamä−ti pri tvorbe nápovede <strong>na</strong> profesionálnej úrovni.Proces tvorby nápovede je výsledkom tvorivej duševnej èinnosti jeho autora (prí−padne autorov), a preto potrebuje systémový prístup. Pouitím systémového prístu−pu bude zabezpeèená integrita a komplexnos po<strong>sk</strong>ytovaných údajov, ¾ahká orientá−cia v systéme nápovede, grafická príalivos, jednoduchá rozšírite¾nos a modifiko−vate¾nos. Vhodne spracovaný nápovedný systém po<strong>sk</strong>ytuje mnoho výhod jed<strong>na</strong>k preautorov, ako aj finálnych pouívate¾ov. Do mnoiny kladov môeme zaradi <strong>na</strong>príkladvytvorenie preh¾adnej osnovy, pod¾a ktorej sa bude pri tvorbe systému postupova,ïalej minimalizáciu nákladov a èasu a dokonèenie projektu vèas a bez zbytoènýchodkladov. Ove¾a lepšie sa vám bude pracova s nápoveïou vtedy, ak jej tvorbu bude−te chápa ako tvorivú èinnos s istými vopred definovanými pravidlami. Proces tvor−by systému nápovede sa všeobecne <strong>sk</strong>ladá z <strong>na</strong>sledujúcich piatich fáz: Plánovanie Príprava vstupných materiálov Vývoj systému nápovede Testovanie systému nápovede a odstraòovanie chýb Finál<strong>na</strong> kompresia a kompilácia systému nápovedeAby ste lepšie pochopili, èo všetko sa za uvedenými fázami procesu tvorby nápo−vede <strong>sk</strong>rýva, rozoberieme si ich podrobnejšie v <strong>na</strong>sledujúcom texte.1. FÁZA: PLÁNOVANIE. I keï sa vám to môe zda zo zaèiatku èudné, pláno−vacia fáza je <strong>na</strong>jdôleitejšia fáza tvorby nápovedného systému. Vzah medzi fázouplánovania a celkovým èasom <strong>na</strong> vývoj systému nápovede je nepriamoúmerný. Toteda z<strong>na</strong>mená, e èím viac èasu budete venova plánovacej etape, tým menej èasustrávite pri vývoji celého systému nápovede a <strong>na</strong>opak. Doko<strong>na</strong>lé zvládnutie plánova−cej fázy vášho projektu nápovede vyaduje jed<strong>na</strong>k schopnos tvorivého myslenia,predvídania a kombinovania vecí, jed<strong>na</strong>k i z<strong>na</strong>ènú dávku praxe. Pre zjednodušeniemôeme fázu plánovania rozdeli do týchto krokov: Definícia cie¾ového publika Definícia štruktúry nápovedeKROK 1: DEFINÍCIA CIE¼OVÉHO PUBLIKA. Pri práci <strong>na</strong> systéme nápovedesi musíte vedie v prvom rade odpoveda <strong>na</strong> otázku, pre koho, teda pre akú cie¾ovú<strong>sk</strong>upinu pouívate¾ov pripravujete váš nápovedný systém. Je pochopite¾né, e inúštruktúru nápovede zvolíte vtedy, keï budete <strong>na</strong>vrhova systém pre zaèí<strong>na</strong>júcichpouívate¾ov, a inú vtedy, keï váš nápovedný systém bude urèený pre pokroèilýchpouívate¾ov a profesionálov. V zásade existujú štyri kategórie pouívate¾ov, pre kto−rých môete koncipova váš systém nápovede. Ich charakteristika sa <strong>na</strong>chádza vtabu¾ke è. 1.Tabu¾ka è. 1Kategória pouívate¾aPoèítaèový zaèiatoèníkMierne pokroèilý pouívate¾Pokroèilý pouívate¾Poèítaèový expertCharakteristikaÈlovek, ktorý sa ešte len oboz<strong>na</strong>muje s poèítaèom, má len základné z<strong>na</strong>lostiovládania beného softvérového vybavenia.Èlovek, ktorý u pomerne dobre ovláda prácu so základným softvérovýmvybavením poèítaèa, no ešte sa nikdy nestretol s vaším programom (prípadnepodobným typom programu). Napríklad ste vytvorili špeciálny grafickýprocesor, no pouívate¾ má zatia¾ <strong>sk</strong>úsenosti len s kancelár<strong>sk</strong>ym softvérom.Èlovek, ktorý má rozsiahle z<strong>na</strong>losti ovládania softvéru akéhoko¾vek druhu, jedokonca moné, e disponuje i z<strong>na</strong>ène pokroèilými vedomosami z oblastiprogramovania, architektúry a správy systému atï.Èlovek vyz<strong>na</strong>èujúci sa mimoriadne vysokou vedomostnou úrovòouo poèítaèovom hardvéri a softvéri. Ide o <strong>sk</strong>utoèného profesionála, pre ktoréhosú poèítaèe ivobytím.Je samozrejmé, e predstavitelia kadej cie¾ovej kategórie pouívate¾ov budú klásrozlièné poiadavky <strong>na</strong> váš systém nápovede. Je ve¾mi pravdepodobné, e poèítaèovízaèiatoèníci a mierne pokroèilí pouívatelia sa budú zaujíma predovšetkým o témynápovede v obsahovej štruktúre, zatia¾ èo pokroèilí pouívatelia a softvéroví expertibudú vyuíva nápoveï tak, aby si èo mono <strong>na</strong>jrýchlejšie vyh¾adali potrebné infor−mácie, <strong>na</strong>pr. presný zápis funkcie, parametre makra èi klávesové <strong>sk</strong>ratky. Pri tvorbekomplexného nápovedného systému by ste nemali zabudnú <strong>na</strong> implementáciu iad−neho dôleitého prvku. Správny systém by mal obsahova vhodne a logicky usporia−dané témy v obsahovej štruktúre, podrobný register i monos fulltextového vyh¾adá−vania k¾úèových slov.V prostredí nápovede typu WinHelp 4.0 nie je moné dy<strong>na</strong>micky filtrova informácie pre rôznecie¾ové <strong>sk</strong>upiny finálnych pouívate¾ov. Nápoveï štýlu HTML je v tomto smere o nieèo vyspelejšia,pretoe dovo¾uje do systému nápovede zaradi tzv. informaèné typy, pomocou ktorých je monév obsahovej štruktúre HTML nápovede zobrazi informácie len pre konkrétnu <strong>sk</strong>upinupouívate¾ov. Problematiku informaèných typov rozoberieme dopodrob<strong>na</strong> v jednej z <strong>na</strong>sledujú−cich èastí seriálu.KROK 2: DEFINÍCIA ŠTRUKTÚRY NÁPOVEDE. V procese definície štruk−túry nápovede je potrebné urèi tie témy, ktoré budú tvori informaèný obsah nápo−vede, ich štruktúru a pozíciu v systéme nápovede. Rov<strong>na</strong>ko je nevyhnutné premyslie116 PC REVUE 1/2003
P R O G R A M U J E M EObr. 1 Testovanie integrity obsahového súboru (.CNT)Obr. 4Dialógové oknopri pouití HelpAuthor móduObr. 2 Skúšobné volanie makra Obr. 3 Skúšobné volanie API funkcie WinHelpa zvái ïalšie dôleité aspekty nápovede: prepojeniamedzi jednotlivými témami, pouitie vhodných symbolov vpoznámkach pod èiarou, grafický dizajn nápovede a i. Fan−tázii sa medze nekladú, no nesmiete zabúda, e stále tvo−ríte nápovedný systém, ktorý bude ne<strong>sk</strong>ôr hlavným infor−maèným prameòom pouívate¾ov vašej softvérovej apliká−cie. S<strong>na</strong>te sa preto èo <strong>na</strong>jviac vcíti do pozície koncovéhopouívate¾a vášho systému nápovede. Pouívatelia zvyèaj−ne nevý<strong>sk</strong>ajú od radosti, keï sa musia „preklikáva“ mno−hými stránkami nápovede, a koneène zí<strong>sk</strong>ajú poadovanéinformácie. Pokúste sa <strong>na</strong>vrhnú nápovedný systém tak,aby sa dôleité informácie <strong>na</strong>chádzali <strong>na</strong> prvej, maximálnedruhej úrovni nápovednej štruktúry. Nebojte sa v hojnejmiere experimentova a zavádzajte nové elementy, o kto−rých si myslíte, e budú pouívate¾mi vysoko ocenené.Obr. 5Ve¾mi dobrou, aj keï èasto prehliadanou metódou tvorby systému nápovede je <strong>na</strong>èrtnutie si základ−nej koncepcie systému nápovede <strong>na</strong> hárok papiera. Ak chcete, môete si <strong>na</strong>kresli i celý vývojový dia−gram tvorby vášho nápovedného systému. V prípade potreby môete <strong>na</strong> tento úèel poui i špeciálnysoftvér a svoju predstavu o nápovedi „vymodelova“ priamo v òom.Takisto zváte implementáciu kontextovej nápovede. Pod¾a zloitosti programu bude−te mono musie vytvori desiatky alebo stovky tém špeciálne pre kontextovú nápoveï,èo môe predåi vývoj systému rádovo o 40 a 60 percent.2. FÁZA: PRÍPRAVA VSTUPNÝCH MATERIÁLOV. V okamihu, keï ste ukonèilifázu plánovania, je èas <strong>na</strong> prípravu materiálov, ktoré robia nápovedný systém nápoved−ným systémom. A<strong>na</strong>lyzujte všetky informácie, ktoré chcete po<strong>sk</strong>ytnú pouívate¾om, apokúste sa ich usporiada do jednotlivých nápovedných tém. Pripravte si všetky ïalšieprvky, ktoré budete chcie v prostredí nápovede poui, ako <strong>na</strong>pr. obrázky, ilustraèné sché−my, náèrty, grafy atï.3. FÁZA: VÝVOJ SYSTÉMU NÁPOVEDE. Proces tvorby nápovedného systémuje <strong>na</strong>jprácnejšia a zároveò aj pomerne stereotypná etapa tvorby nápovede. Tento procestvorí viacero <strong>na</strong> seba <strong>na</strong>dväzujúcich èinností a operácií:1. Napísanie informaèného obsahu nápovedných tém2. Formátovanie tém pomocou príslušných formátovacích symbolov v poznámke pod èiarou3. Prepojenie jednotlivých tém4. Implementácia grafických prvkov5. Implementácia <strong>na</strong>vigaèných prvkov6. Vytvorenie súboru s témami vo formáte .RTF7. Zostrojenie projektového súboru nápovede (.HPJ)8. Úprava vlastností a parametrov nápovede v prostredí programu Help Workshop9. Generovanie platného súboru nápovede typu WinHelp 4.0 (.HLP)Výsledným produktom tejto etapy je plnohodnotný súbor s nápovedným textom,ktorý následne vstupuje do testovacej a ladiacej fázy.4. FÁZA: TESTOVANIE SYSTÉMU NÁPOVEDE A ODSTRAÒOVANIE CHÝB.Keby bolo moné vygenerova nápoveï ihneï <strong>na</strong> prvýkrát plne optimalizovanú a bezakýchko¾vek chýb, nebola by táto etapa vôbec potrebná. No <strong>sk</strong>utoèná prax je predsa lentrochu iná ne ideál<strong>na</strong> teória. Preto vám môem odporúèa jednoduchú, ale ve¾mi úèin−nú testovaciu metódu: Po akejko¾vek modifikácii súboru s témami (.RTF) alebo projekto−vého súboru nápovede (.HPJ) u<strong>sk</strong>utoènite kompiláciu nápovedného súboru, následnevygenerovaný súbor spustite a uistite sa, e všetky vyko<strong>na</strong>né zmeny vyzerajú <strong>na</strong>ozaj tak,ako ste pôvodne zamýš¾ali. Testujte všetky operácie, ktoré bude smie so systémom nápo−vede robi finálny pouívate¾ – preverujte správnos prepojenia nápovedných tém, klikaj−te <strong>na</strong> vytvorené tlaèidlá a spúšajte makrá. Na <strong>na</strong>sledujúcich riadkoch si ukáeme nieko¾kopostupov, ktoré vám môu testovaciu fázu aspoò trochu u¾ahèi.1. POSTUP: TESTOVANIE SÚBORU S OBSAHOVOU ŠTRUKTÚROU (.CNT)1. Spustite program Help Workshop.2. Z ponuky Test vyberte prvú poloku Contents file.3. V dialógovom okne špecifikujte obsahový súbor (.CNT) urèený <strong>na</strong> testovanie.4. Klepnite <strong>na</strong> tlaèidlo Test (obr. 1).Help Workshop <strong>sk</strong>ontroluje správnos štruktúry obsahového súboru a spýta sa vás, èichcete otestova i prepojenia medzi témami. Ak sa v procese testovania vy<strong>sk</strong>ytne chyba,program vás o tom príslušným spôsobom informuje.2. POSTUP: SKÚŠOBNÉ VOLANIE MAKRA1. Z menu Test vyberte príkaz Send a macro.2. Do textového po¾a Macro zadajte syntax makra s platnými parametrami.Aktivácia vo¾by <strong>na</strong> okamité zobrazenienápovedného súboru po kompiláciiObr. 6Grafické znázornenie pouitia rôznychkompresných metód3. Do textového po¾a Help file zadajte cestu k vášmu súboru s nápoveïou.4. Kliknite <strong>na</strong> tlaèidlo Send (obr. 2).Po ukonèení testovania aktivujte poloku Close All Help z ponuky Test, aby ste ukonèilibeiacu inštanciu systému WinHelp.3. POSTUP: SKÚŠOBNÉ VOLANIE API FUNKCIE WINHELP. API funkciu Win−Help je moné vola i zo samotného programu Help Workshop. Postupujte takto:1. Z ponuky Test vyberte poslednú poloku s názvom WinHelp API.2. Do textového po¾a Help file zadajte cestu k vášmu súboru s nápoveïou.3. Z otváracieho zoz<strong>na</strong>mu Command vyberte príkaz, ktorý chcete poui.4. Ak sú potrebné ïalšie dodatoèné parametre, zadajte ich do spodného textovéhopo¾a (jeho názov sa dy<strong>na</strong>micky mení pod¾a predchádzajúcej selekcie príkazu v otvára−com zoz<strong>na</strong>me Command). Ak <strong>na</strong>príklad zo zoz<strong>na</strong>mu Command vyberiete príkazHELP_CONTEXT, do spodného textového po¾a budete musie <strong>na</strong>písa numerickú hod−notu témy, ktorú budete chcie zobrazi.5. Aktivujte tlaèidlo Call (obr. 3).Po ukonèení testovania aktivujte poloku Close All Help z ponuky Test, aby ste ukon−èili beiacu inštanciu systému WinHelp.4. POSTUP: POUITIE HELP AUTHOR MÓDU. Tento mód aktivujete zaškrtnutímvo¾by Help Author v ponuke File. Aktivácia módu vám dovo¾uje vyui pokroèilé monostitestovania nápovedného systému. Ak pri zapnutej vo¾be spustíte súbor s nápoveïou,môete sa stretnú s týmito zme<strong>na</strong>mi: Text v titulkovom pruhu ok<strong>na</strong> nápovede je <strong>na</strong>hradený èíselnou hodnotou, ktoráidentifikuje práve otvorenú tému nápovede. Toto èíslo je urèené <strong>na</strong> základe pozícietémy v súbore s témami (.RTF). Za èíselnou identifikáciou ïalej <strong>na</strong>sleduje text„(Pomocník autora zap.)“. Ak klepnete pravým tlaèidlom myši <strong>na</strong> akéko¾vek miesto vnútri nápovednej témy,objaví sa kontextová ponuka, v ktorej môete aktivova vo¾bu Spýta sa <strong>na</strong> aktívnombode. Keï potom ne<strong>sk</strong>ôr klepnete <strong>na</strong> od<strong>sk</strong>ok do inej témy nápovede, <strong>na</strong> tlaèidlo alebo<strong>na</strong> akéko¾vek citlivé miesto, ktorého aktivácia spustí nejakú operáciu, systém WinHelpzobrazí dialógové okno so správou, èo sa vlastne má u<strong>sk</strong>utoèni.Pre ¾ahšie pochopenie Help Author módu si uveïme názorný príklad. Predpokladajme,e v istej nápovednej téme sme vytvorili tlaèidlo, po ktorého aktivácii sa spustí makroExecFile (EF), ktoré <strong>na</strong>dväzne zabezpeèí spustenie programu Poznámkový blok (notepad).Ak máme zapnutú podporu Help Author módu a klepneme <strong>na</strong> vytvorené tlaèidlo, zobrazísa dialógové okno, znázornené <strong>na</strong> obr. 4.Zvolením príslušného tlaèidla môete potvrdi vyko<strong>na</strong>nie operácie (v <strong>na</strong>šom prípadespustenie špecifikovaného programu) alebo, <strong>na</strong>opak, akciu zruši. Tento postup je obzvlášvhodný pri kontrolnom testovaní všetkých aktívnych miest v systéme nápovede.V kontextovej ponuke, ktorú môete pri vyuití Help Author módu vyvola, sa <strong>na</strong>chá−dza ešte jeden príkaz, ktorý by mohol by pre vás uitoèný. Ide o poloku s názvomInformácie o téme, po ktorej aktivácii sa zobrazí okno so základnými informáciami opráve aktívnej téme nápovede.5. POSTUP: AUTOMATICKÉ ZOBRAZENIE SÚBORU S NÁPOVEÏOU IHNEÏPO KOMPILÁCII. Vhodným <strong>na</strong>stavením programu Help Workshop môete zabezpe−èi, aby sa súbor s nápoveïou zobrazil ihneï po tom, ako je dokonèená jeho kompilácia.Pouitie tejto vo¾by jednoz<strong>na</strong>ène minimalizuje èas <strong>na</strong> vyh¾adanie a následné spustenie<strong>sk</strong>ompilovaného nápovedného súboru. Túto vo¾bu aktivujete tak, e z ponuky File vybe−riete príkaz Compile a v dialógovom okne zaškrtnete monos Automatically display Helpfile in WinHelp when done (obr. 5).1/2003 PC REVUE 117