|
14. dφl |
Vß₧enφ
Φtenß°i,
v dneÜnφm
dφlu se budu v∞novat vaÜim otßzkßm a dotaz∙m, t²kajφcφch se problΘmov²ch
oblastφ HTML nßpov∞dy. V∞°φm, ₧e zde najde ka₧d² z vßs alespo≥ jednu
odpov∞∩ na svΘ änßpov∞dnφô problΘmy. P°ipravte se, zaΦφnßme.
|
Dobr² den. VßÜ serißl o nßpov∞d∞ je skv∞l², ji₧
v mnoha p°φpadech jsem za pomoci vaÜich rad a postup∙ zdßrn∞ vy°eÜil
svΘ problΘmy. Rßd bych se vßs zeptal, zda-li je v HTML nßpov∞d∞ mo₧nΘ
ud∞lat jednotlivΘ polo₧ky rejst°φku ve vφce ·rovnφch. Rßd bych toti₧ vno°il
pod jednu polo₧ku jeÜt∞ n∞kolik dalÜφch. Dφky za odpov∞∩. |
Ano,
je to mo₧nΘ. Jen doplnφm, ₧e Φtenß° mß patrn∞ na mysli tvorbu takzvan²ch
vφce·rov≥ov²ch polo₧ek rejst°φku. V prost°edφ HTML nßpov∞dy m∙₧ete
vytvo°it vφce·rov≥ov²ch polo₧ek, kolik budete chtφt (matematicky °eΦeno: jednu
a₧ n polo₧ek). Jak vytvo°it polo₧ku druhΘ ·rovn∞ si ukß₧eme na nßsledujφcφm
p°φkladu.
P°edpoklßdejme,
₧e vßÜ rejst°φk mß takovouhle podobu:
Proto₧e
chceme, aby byla druhß polo₧ka pod°azena tΘ prvnφ, musφme jφ äposunoutô sm∞rem
doprava. OznaΦte tedy druhΘ tΘma a stiskn∞te tlaΦφtko Move Selection Right (). Jakmile
uskuteΦnφte demonstrovanou akci, tΘma se posune doprava a stane se
z n∞j polo₧ka druhΘ ·rovn∞. Podobn∞ m∙₧ete postupovat, pokud budete chtφt
vytvo°it polo₧ku (tΘma) t°etφ, ΦtvrtΘ, pßtΘ atd. ·rovn∞.
|
Ve svΘm projektu nßpov∞dy pou₧φvßm
velmi mnoho rejst°φkov²ch polo₧ek, kterΘ ovÜem pot°ebuji mφt se°azenΘ podle
abecedy. Existuje v programu HTML Help Workshop n∞jakß mo₧nost
automatickΘho abecednφho °azenφ polo₧ek rejst°φku, nebo je opravdu nevyhnutnΘ
provßd∞t °azenφ manußln∞? |
I kdy₧
program HHW rozhodn∞ nepat°φ mezi pokroΦilΘ editory pro tvorbu HTML nßpov∞dy,
mo₧nost abecednφho se°azenφ tΘmat rejst°φku poskytuje. Postupujte takto:
Nejprve napiÜte vÜechny polo₧ky rejst°φku a potΘ aktivujte tlaΦφtko Sort Keywords Alphabetically (), kterΘ se
nachßzφ na vertikßlnφ liÜt∞ tlaΦφtek.
|
N∞kde jsem se doΦetl, ₧e i polo₧ka
obsahu v podob∞ äotvφrajφcφ a uzavφrajφcφ seô knihy m∙₧e b²t navßzßna na
zobrazenφ tΘmata nßpov∞dy. Jak to lze ud∞lat v HTML Help Workshopu? |
Ano,
mßte pravdu. Styl HTML nßpov∞dy vßm dovoluje opat°it i hlavnφ obsahovΘ tΘma
p°φsluÜn²m nßpov∞dnφm textem. Na vysv∞tlenφ pro jinΘ Φtenß°e: Termφnem ählavnφ
nßpov∞dnφ tΘmaô mßm na mysli tematick² celek, p°ed kter²m je v obsahovΘ
stromovΘ struktu°e standardn∞ zobrazena ikona knφ₧ky. Jestli₧e u₧ivatel poklepe
na tuto ikonu, knφ₧ka se äotev°eô a zp°φstupnφ u₧ivateli vÜechna vno°enß
tΘmata, kterß odpovφdajφ p°φsluÜnΘmu tematickΘmu celku. Ve skuteΦnosti vÜak lze
hlavnφ tΘma obsahovΘ struktury änaaran₧ovatô tak, aby se po klepnutφ na polo₧ku
tΘmatickΘho celku zobrazil jeho struΦn² obsah, p°φpadn∞ dalÜφ d∙le₧itΘ a vhodnΘ
informace.
Postupujte
podle nßsledujφcφch instrukcφ. Nejprve vyberte tu polo₧ku, kterß tvo°φ jeden
tematick² celek. Dßle klepn∞te na tlaΦφtko Edit Selection (), na co₧ se
zobrazφ okno Table of Contents Entry. Zde, na zßlo₧ce General, klikn∞te na tlaΦφtko Add a nakonec vyberte ten .HTM
dokument, kter² si p°ejete asociovat s polo₧kou tematickΘho celku.
Provedete-li kompilaci projektovΘho souboru nßpov∞dy a vytvo°φte-li opravdov²
soubor HTML nßpov∞dy (.CHM), ji₧ v n∞m bude implementovßna i uvedenß
technika. Vskutku, kdy₧ u₧ivatel jenom jednou klepne na polo₧ku tematickΘho
celku, objevφ se k²₧enΘ nßpov∞dnφ tΘma.
|
Ke svΘmu programu dodßvßm i
nßpov∞du ve formßtu komprimovanΘho souboru HTML (.CHM). Proto₧e program i
nßpov∞du pom∞rn∞ Φasto aktualizuji, pot°eboval bych u₧ivatele upozornit na
novß tΘmata, kterß byla do nßpov∞dy p°idßna od vypuÜt∞nφ poslednφ verze
softwaru. Cht∞l bych vßs proto poprosit o radu, jak toto dilema vy°eÜit. |
ProblΘm
oznaΦovßnφ nov²ch, nebo modifikovan²ch tΘmat nßpov∞dy se v dotazech
objevuje s pravidelnφ periodou. Je vskutku chvßlyhodnΘ, ₧e stßle jeÜt∞
existujφ producenti softwaru, kter² se sna₧φ co nejvφce vychßzet vst°φc
finßlnφm u₧ivatel∙m tφm, ₧e oznaΦujφ zm∞n∞nß tΘmata specißlnφmi vizußlnφmi
znaky v obsahovΘ sekci nßpov∞dy (TOC). A jak oznaΦit modifikovanΘ tΘma
v programu HTML HelpWorkshop? Inu, velmi lehce, jak ihned uvidφte.
Po
potvrzenφ zm∞n se u modifikovanΘ polo₧ky objevφ Φervenß hv∞zdiΦka, kterß
indikuje, ₧e jde opravdu o novΘ, nebo aktualizovanΘ tΘma. Situaci ilustruje
dalÜφ obrßzek.
Samoz°ejm∞
₧e problematika oznaΦovßnφ nov²ch tΘmat nßpov∞dy se dß vy°eÜit i jin²m
zp∙sobem. M∙₧ete kup°φkladu vytvo°it svΘ vlastnφ ikony obsahovΘ struktury
nßpov∞dy a upozornit u₧ivatele na v²znam t∞chto ikon.
|
Pot°eboval
bych z HTML nßpov∞dy spustit externφ program. V nßpov∞d∞ typu
WinHelp 4.0 jsem pro tento ·Φel pou₧φval makro ExecFile s platn²mi
parametry. V HTML nßpov∞d∞ jsem ale ₧ßdnΘ takovΘ makro nenaÜel. Otßzka
je nasnad∞, jak lze spustit program z prost°edφ HTML nßpov∞dy? |
Makro
ExecFile (EF) jste hledali v HTML nßpov∞d∞ marn∞. Pro spuÜt∞nφ externφho
programu se nynφ pou₧φvß ovlßdacφ prvek ActiveX s nßzvem HTML Help Control.
Prost∞ instanci tohoto prvku vlo₧φte do k≤du toho .HTM souboru, ze kterΘho
budete chtφt spustit po₧adovan² program. Abyste cel² postup lΘpe pochopili,
uvedeme si p°φklad spuÜt∞nφ programu Poznßmkov² blok (notepad) z HTML
nßpov∞dy. Postupujte takto:
<OBJECT id=hhctrl
type="application/x-oleobject"
ááááááá
classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"
ááááááá
codebase="hhctrl.ocx#Version=4,74,9273,0"
ááááááá width=100
ááááááá height=100
>
ááá <PARAM name="Command"
value="ShortCut">
ááá <PARAM name="Button"
value="Text:Poznßmkov² blok">
ááá <PARAM name="Item1"
value=",notepad,">
</OBJECT>
Zkompilujete-li
soubor nßpov∞dy, ve zvolenΘm .HTM souboru se bude nachßzet i vytvo°enΘ
tlaΦφtko, po aktivaci kterΘho se spustφ urΦen² program.
|
Po
spuÜt∞nφ nßpov∞dy bych rßd zobrazil firemnφ logo. Pora∩te prosφm, jak to
ud∞lat. |
Zobrazenφ
loga po nastartovßnφ nßpov∞dy je vhodnΘ jak pro prezentaci firmy, tak pro
sd∞lenφ informacφ ohledn∞ autorsk²ch prßv. Ve skuteΦnosti m∙₧ete nechat
zobrazit jak²koli obrßzek, nemusφ jφt nutn∞ o logo spoleΦnosti a zobrazenφ
obrßzku se podobn∞ nemusφ nevyhnutn∞ vßzat na start systΘmu nßpov∞dy (obrßzek
lze zobrazit po zobrazenφ libovolnΘho .HTM souboru). Uveden² ·kol nßm pom∙₧e
vy°eÜit ovlßdacφ prvek ActiveX s nßzvem HTML Help Control, jeho₧ instanci
vlo₧φme do toho .HTM souboru, po zobrazenφ kterΘho chceme zobrazit i obrßzek. Postup
vklßdßnφ instance ovlßdacφho prvku do konkrΘtnφho .HTM souboru jsem u₧
vysv∞tloval n∞kolikrßt, a proto se k n∞mu ji₧ nebudu vracet. JedinΘ, na co
nesmφte zapomenout, je vybrßnφ polo₧ky Splash screen ze seznamu Specify the
command v prvnφm
kroku pr∙vodce vklßdßnφ prvku do .HTM souboru. Podobn∞ m∙₧ete nastavit i poΦet
sekund, po uplynutφ kter²ch mß obrßzek zmizet z obrazovky poΦφtaΦe.
|
Rßd bych zaΦal s profesionßlnφm v²vojem nßpov∞dy. Mohl
byste mi doporuΦit n∞jakou literaturu, p°φpadn∞ internetovΘ zdroje? D∞kuji
p∞kn∞. |
Pokud
vφm, tak literatury zab²vajφcφ se tvorbou nßpov∞dy (Φi u₧ stylu WinHelp 4.0
nebo HTML) je opravdu velice poskrovnu. V ΦeskΘm jazyce vyÜla jenom kniha
o tvorb∞ nßpov∞dy ve Windows 95, v originßlu pojmenovanß jako äMicrosoft
Windows 95 Help Authoring Kitô. HTML nßpov∞dou se zab²vß v²teΦnß kniha
s nßzvem äMicrosoft Official HTML Help Authoring Kitô, kterß je psßna v
anglickΘm jazyce. VzpomφnanΘ knihy si m∙₧ete objednat v n∞kter²ch
internetov²ch knihkupectvφch. Co se t²Φe druhΘ poloviny dotazu, a sice
internetov²ch zdroj∙, v oblib∞ mßm p°edevÜφm dv∞ strßnky (ob∞ jsou
zahraniΦnφ). Jde o http://www.helpware.net
a http://www.helpmaster.com.áá á
|
Na svΘm
poΦφtaΦi pou₧φvßm operaΦnφ systΘm Windows XP a takΘ Visual Basic 6.0. ZkouÜel
jsem spouÜt∞t soubor HTML nßpov∞dy z VB 6.0, no narazil jsem na jist²
problΘm. V₧dy, kdy₧ zav°u aplikaci VB p°φkazem Zav°φt ze systΘmovΘ nabφdky a soubor s nßpov∞dou je stßle
spuÜt∞n², VB se okam₧it∞ ukonΦφ, jednoduÜe äzmizne z obrazovkyô. Nevφm,
jestli jste se s tφmto problΘmem setkal, no budu vd∞Φn² za jakoukoli
radu. |
Domnφvßm
se, ₧e bude zapot°ebφ posoudit p°edstφranou problΘmovou situaci komplexn∞ji,
aby Φtenß°i dokonale pochopili podstatu tohoto velmi zajφmavΘho a delikßtnφho
problΘmu. P°i ukonΦovßnφ projektovΘ aplikace v prost°edφ VB 6.0 pod systΘmem
Windows XP dochßzφ obΦas k zßhadnΘ
situaci. Pro naÜφ ·vahu p°edpoklßdejme, ₧e na formulß°i je umφst∞nΘ tlaΦφtko,
kterΘho obsluhu udßlosti Click tvo°φ nßsledujφcφ p°φkaz:
Call HtmlHelp(Me.hWnd,
"c:\soubor1.chm", HH_DISPLAY_TOPIC, 0)
ááá
Tento
p°φkaz volß API funkci HTMLHelp, kterß zabezpeΦuje zobrazenφ souboru
s HTML nßpov∞dou (abstrahuji od nutnosti deklarace funkce a vÜech
pot°ebn²ch konstant). Pro ukonΦenφ b∞₧φcφ instance nßpov∞dy je vypln∞na i
obsluha udßlosti QueryUnload formulß°e tφmto p°φkazem:
Call
HtmlHelp(0, vbNullString, HH_CLOSE_ALL, 0)
Nutno
podotknout, ₧e po spuÜt∞nφ projektu a po klepnutφ na tlaΦφtko se zavolß funkce
HTMLHelp a soubor s HTML nßpov∞dou se ·sp∞Ün∞ zobrazφ. Potφ₧e ovÜem
nastßvajφ p°i ukonΦovßnφ aplikace. UkonΦφte-li aplikaci tak, ₧e jednoduÜe
klepn∞te na tlaΦφtko X v pravΘ Φßsti
titulkovΘho pruhu aplikace, vÜe je v po°ßdku, ukonΦφ se jak aplikace, tak
i spuÜt∞nß instance HTML nßpov∞dy. OvÜem pozor! Jestli₧e ukonΦφte aplikaci
vybrßnφm p°φkazu Zav°φt ze systΘmovΘ
nabφdky, VB odst°elφ projektovou aplikaci a zßhy i sßm sebe. Toto je patrn∞ ten
prav² problΘm, na kter² se Φtenß° ptß.
UvedenΘ
chovßnφ Visual Basicu je ovÜem velice nevyzpytatelnΘ; n∞kdy je HTML nßpov∞da
°ßdn∞ ukonΦena a vÜe je OK, jindy naopak dojde ke zhroucenφ aplikace i VB. P°i
experimentech jsme narazil i na dalÜφ zajφmavost: Pokusφte-li se vygenerovat
samostatn∞ spustiteln² soubor (.EXE) projektu a ten spustφte, sv∞te div se, vÜe
je v naprostΘm po°ßdku! Dokonce nenφ hlßÜena ani ₧ßdnß chyba za b∞hu
programu! Proto moje rada znφ, abyste v p°φpad∞ uvedenΘ chyby vygenerovali
spustiteln² soubor a testovali ten.
|
Naprosto bezproblΘmovΘ jsou experimenty
s HTML nßpov∞dou pod Windows XP ve Visual Basicu .NET. Tady nedochßzφ
k ₧ßdn²m chybßm ani jak²mkoli nejasnostem. Pokud tedy mßte p°φstup
k VB .NET, zapome≥te na VB 6.0 a vyu₧φvejte v²hod .NET prost°edφ.á |
Pou₧it²
k≤d pro volßnφ nßpov∞dy je zcela v po°ßdku, zkouÜel jsem ho i pod Windows
Me, kde vÜe b∞halo bez nejmenÜφch potφ₧φ. á
|
Sna₧φm
se tvo°it nßpov∞du, no program HTML Help Workshop mi moc nevyhovuje. Nevφte
mi poradit jin² software na tvorbu HTML nßpov∞dy? D∞kuji. |
Program
HTML Help Workshop m∙₧e b²t opravdu pro n∞koho nevhodn², obzvlßÜt∞ pro
u₧ivatele, kte°φ by rßdi tvo°ili svΘ soubory nßpov∞d v u₧ivatelsky
p°φv∞tiv∞jÜφm a komfortn∞jÜφm programu. Program∙ pro tvorbu a editaci soubor∙
nßpov∞d existuje pom∞rn∞ znaΦnΘ mno₧stvφ, od t∞ch mΘn∞ kvalitnφch, kterΘ lze
po°φdit zpravidla za mrzk² penφz (p°φpadn∞ zadarmo) a₧ po aplikaΦnφ äÜpiΦkyô,
kter²ch obstarßnφ vychßzφ i na n∞kolik desφtek tisφc korun. Celkem sluÜn² program
pro editaci HTML nßpov∞dy a takΘ nßpov∞dy novΘ generace (MS Help 2.0) je FAR,
zkuÜebnφ verzi kterΘho si m∙₧ete stßhnout z webu http://www.helpware.net. JedineΦn²m je
zajistΘ softwarov² produkt RoboHelp, kter² mß mezi programy pro tvorbu nßpov∞dy
ji₧ dlouhou tradici. Pomocφ uvedenΘho programu lze vytvß°et nßpov∞du ve zcela
WYSIWYG prost°edφ. Vφce informacφ o tomto produktu se m∙₧ete dozv∞d∞t na http://www.ehelp.com.