C# - Tartalomjegyzék készítése a HTMLHelp-ben

HTMLHelp 3. rész

forráskód letöltése
A 3. részben megismerkedhetünk azzal a módszerrel, melynek segítségével tartalomjegyzéket is készíthetünk a HTMLHelp-be. Így lehetőség nyílik tetszőleges hierarchiába szervezni az egyes oldalakat, melyek között a felhasználó úgy lépkedhet, mintha egy Windows Intézőben lépkedne az egyes alkönyvtárak között.
Kezdjük tehát a HTML Help Workshop további funkcióinak a megismerésével.
Mostani help állományunkhoz egy új projectet hozunk létre. Ezt a szokásos módszerrel tesszük: File - New - Project.
Az új project-et Help03.hhp néven mentjük. Ha a mellékelt állományt szeretnénk megnyitni, akkor azt a File - Open menüpont és a Help03.hhp választásával tehetjük, vagy egyszerűen kattintsunk erre az állományra az Intézőben.
A bal oldali nyomógombok közül válasszuk a Change project options gombot. Ekkor megnyílik az az ablak, ahol számtalan beállítási lehetőségünk adódik a Help állománnyal kapcsolatban. Első a Title. Ennél az ablaknál megadott szöveg kerül majd a megnyitott help állomány ablakának fejlécére. Megadhatunk egy alapértelmezett oldalt is, mely a megnyitáskor lesz látható. Ehhez válasszunk egy html állományt a Default file ablaknál. Ez persze csak akkor sikerül, ha már van felvéve néhány web lapunk. A továbbiakban beállíthatjuk a help nyelvét és alapértelmezett betűtípusát is, mely a bal oldali tartalomjegyzék ablakban kerül felhasználásra.
Ezek után az Add/Remove topic files gomb segítségével felveszünk három web lapot, melyeket már előre elkészítettünk a 3a.htm, 3b.htm és a 3c.htm állományokba.
Nézzük most a tartalomjegyzék készítését. Aktuálisan a Project lap van kiválasztva, ezt most váltsuk át a Contents oldalra. Ekkor rögtön kapunk egy olyan kérdést, hogy meglévő, vagy új tartalomjegyzéket kívánunk-e felhasználni.
Válasszuk most az újat. Mentéskor ennek szintén a Help3 nevet adjuk. A tartalomjegyzék állomány kiterjesztése HHC lesz.
A tartalomjegyzék ilyenkor még értelemszerűen üres. Ha a hierarchikus rendszerbe új elemet szeretnénk felvenni, akkor ezt megtehetjük a szintén jobb oldalon található Insert a heading gomb lenyomásával. Ekkor megjelenő ablakban egy új fejezet címet adhatunk meg az Entry title mezőnél. Ha az adott elemhez web lapot is szeretnénk rendelni, akkor az Add/Edit gomb lenyomásával választhatunk egy állományt a fenti három már megadott HTM közül.
Amikor egy olyan elemhez érünk, mely már csupán egy konkrét web lapot takar, akkor célszerűen az Insert a page gomb lenyomásával tehetjük ezt meg. Itt ugyanazt az ablakot kapjuk, mint az előbb és a teendőnk is ugyanaz.
Jobb oldalon találunk négy olyan nyomógombot, melyek segítségével a hierarchia szinteket alakíthatjuk ki, úgy hogy az egyes elemeket mozgatjuk különböző irányba.
A későbbiek folyamán az Edit selection gomb lenyomásával egy kiválasztott elem tulajdonságait módosíthatjuk. Ilyen lehet az elem előtt megjelenő kis kép, melyet az Advanced lapon az Image index mezőnél adhatunk meg.
Ezek után már csak annyi a teendő, hogy visszalépünk a programunk főablakán található Project lapra és a Save all files and complie gomb lenyomásával mentjük és lefordítjuk a HTML help állományt. A kész CHM állományt gyorsan ellenőrizhetjük is, ha egy Windows intézőn keresztül rákattintunk az állományra.
A help megjelenítése programból a már ismert Help osztály ShowHelp függvényének hívásával történik. Itt első paraméterként a hívó ablakot, másodikként a megjelenítendő CHM állományt kell megadnunk. Ha további paramétereket nem adunk meg, akkor a help az alapértelmezett oldallal jelenik meg.
    private void button1_Click(object sender, System.EventArgs e)
    {
      Help.ShowHelp(this, "Help03.chm");
    }
Ha szükségünk lenne valamely aloldal azonnali megjelenítésére, akkor használjuk a harmadik paramétert is, melyben megadható annak a web oldalnak a neve, amelyet szeretnénk viszontlátni.
    private void button2_Click(object sender, System.EventArgs e)
    {
      Help.ShowHelp(this, "Help03.chm", "3c.htm");
    }

HTMLHelp cikksorozat