|
A mellékelt példaprogram megnyitása előtt a HtmlHelpPopup_1.pas-ban lévő komponenst telepítenie kell a Delphi alá.
Ehhez a módszerhez nincs szükség help állomány készítésére, hanem csupán a HTMLHelp függvényét kell meghívnunk a megfelelő paraméterezéssel.
Ennek egyszerű megvalósításához készítünk egy újabb komponenst, mely kimondottan a Popup Help megjelenítését szolgálja, szemben a múlt héten készült általános HTMLHelp kiszolgálására alkalmas komponenssel.
A komponens alapja itt is ugyanaz: szintén a HHCtrl.ocx-t és a benne lévő HTMLHelpA függvényt kell felhasználnunk, így ennek ismertetését itt nem ismételjük meg.
A Popup ablakhoz viszont szükségünk lesz egy THtmlHelpPopup típusú struktúra kitöltéséhez. Ehhez viszont kell egy új osztályt létrehoznunk, melyből a komponensünk számára majd egy property-t tudunk készíteni.
Ez az új osztály lesz a TPopup. Nézzük milyen property-kre is van szükség benne.
A Text-en keresztül adhatjuk meg azt a többsoros szöveget, mely a popup ablakban megjelenik majd.
A Left property-ben adjuk meg az ablak bal szélét, míg a Top property-ben az ablak tetejét. Az ablak szélessége és magassága automatikusan kerül meghatározásra a szövegtől függően.
A ColorBackground-ban az ablak háttérszíne határozható meg. Ha itt $FFFFFFFF értéket, vagyis -1-et adunk meg, akkor ott a Windows-ban alapértelmezett szín kerül használatra.
A szöveg és az ablak széle között megadhatjuk pixelben, hogy mekkora legyen a margó. Ez mind a négy oldalon különböző lehet. Ezeket a MarginLeft, MarginTop, MarginRight, MarginBottom property-ken keresztül adhatjuk meg.
A szöveg betűtípusa is megadható a Font property-n keresztül, de itt csak a font neve, mérete, színe, valamint az az információ kerül felhasználásra, hogy dőlt, vastag, vagy aláhúzott-e a betű.
Ha kész a TPopup, akkor ebből létrehozunk a komponensünknél egy Popup nevű property-t.
Az ablak aktivizálását a ShowPopup függvény végzi. Itt a TPopup osztály adataiból feltöltjük a THtmlHelpPopup struktúrát.
Ezután már csak a FHtmlHelpA változóban tárolt függvényt kell meghívnunk, melynél most a második paraméternél elhagyjuk a HTMLHelp állomány megadását, viszont a harmadik paraméternél a HH_DISPLAY_TEXT_POPUP konstanst használjuk jelezve, hogy most egy Popup ablak megjelenítésére lesz szükség. Negyedik - előző fejezetekben még nem használt - paraméterben kell átadnunk a THtmlHelpPopup struktúrát tartalmazó változónak a memóriabeli címét.
|