Hilfesystem unter Windows

Willemers Informatik-Ecke

Das Hilfesystem erzeugen

Zwei Dateien werden gebraucht: NAME.HPJ und NAME.RTF. Das HPJ ist das Hilfeprojekt, ein ASCII-Text, der Informationen über die gesamte Datei hat.

Die NAME.RTF ist eine im Rich-Text-Format geschriebene Datei, die den Inhalt und die inneren Verknüpfungen hält. Zunächst erstellt man einen Hilfetext mit einem RTF-fähigen Editor. Damit Programmierer auch einen Anreiz zum Kauf eines Office-Paket haben, hat man den Wordpad etwas eingeschränkt. Der benötigte Editor muß versteckte Texte und doppelt unterstreichen können. Microsoft WORD kann das, dagegen Wordpad nicht. Unter uns: Starwriter 3.1 auch.

Definition eines Ansprungpunktes

Um eine bestimmte Stelle in der Hilfedatei zu anspringen zu können, setzt man Fußnoten.

#
Topic (Kontextstring): Sprungziel für Sprünge innerhalb des Hilfesystems oder Kontextsprünge von außerhalb. Topic ist die interne Ordnung der Hilfethemen. Das Topic ist ansprechbar über einen eindeutigen String. Von der Applikation kommt eine Kontextnummer (short integer). Im [MAP]-Bereich des HPJ-Files werden beide aufeinander abgebildet.
K
Keyword: Dieser Label wird aus dem Index heraus oder von außen per Keywordsuche angesprungen.
$
Titel / Thema: Dieser muß immer am Anfang einer Seite stehen. Insbesondere, wenn K verwendet wird.

Sprung innerhalb des Hilfesystems

Ein Verweis innerhalb des Hilfetextes kann immer nur einen Kontext zum Ziel haben. Dieser muß nicht zwingend am Seitenanfang stehen. Das Ziel wird per Fußnote mit dem Zeichen # definiert. Angesprungen wird, in dem der Text, der das sichtbare Spungfeld enthält doppelt unterstrichen wird. Im direkten Anschluß daran muß ein verborgener Text stehen, der den Inhalt der Fußnote mit dem #-Zeichen hat.

Die HPJ-Datei

Die HPJ-Datei ist ähnlich einer INI-Datei aufgebaut.
[OPTIONS]
TITLE=Hilfe zum Superprogramm
COPYRIGHT=Arnold Willemer

[FILES]
meintext.rtf

[MAP]
MeinDialog=3200
Eingabe=3300
Unter FILES müssen die Quelltexte in RTF eingetragen werden. Mit MAP wernden Zahlen auf die Kontextstrings umgesetzt. Die Strings sind die, die mit #-Fußnoten definiert wurden. Die Zahlen sind diejenigen, die im Programm als Parameter beim HELP_CONTEXT-Aufruf verwendet werden.

Der Hilfe-Compiler

Die Hilfe-Compiler werden im Allgemeinen mit den Entwicklerwerkzeugen geliefert, stammen aber von Microsoft. Da ist hcw unter Windows 95/NT, hc oder hc31 unter Windows 3.x.

Starten der Hilfe aus dem Programm

Die Funktion zum Starten der Hilfe lautet WinHelp und wird so gerufen:
WinHelp(hWnd, <Name der Hilfedatei>, <HELP_CODE>, <Parameter>);
Beispielsweise kann dieser Aufruf beim Auslösen eines Hilfe-Menüpunktes ausgelöst werden. Auch Hilfe-Tasten in Dialogen sind so am einfachsten zu bedienen.

HELP_CODE

HELP_CONTEXT
Der Parameter ist eine Nummer. Man kann hier eine ID eines Dialogelementes verwenden. Mit diesem Aufruf erreicht man Kontextadressen (#-Fußnoten), wenn man die Nummer in der MAP-Division der HPJ-Datei auf den Label umlegt.
HELP_KEY
Der Parameter ist hier ein String. Man springt hier eine K-Fußnote an. Vorteil: man braucht keine Einträge in der HPJ-Datei. Nachteil: Der String steht auch so im Index.
HELP_QUIT
Zum Ende des Programms sollte mit diesem Befehl die Hilfsbedürftigkeit aufgegeben werden.

Die F1-Taste

Die F1-Taste löst im Fenster die WM_HELP-Message aus. Am einfachsten ist es, von hier aus direkt per WinHelp per HELP_KEY das Schlüsselwort anzuspringen.


Erzeugen der Formate mit Star-Writer V.3.1

Verborgenen Text:

Einfügen / Feldbefehl

Unter Bereich "Funktionen" aus der Combobox wählen. Feldtyp "Verborgener Text". Dann kann im Eingabefeld rechts unten der Text eingegeben werden.

Doppelt unterstrichen

Text markieren. Per rechte Maustaste Kontextmenü aufrufen, dort Zeichenformat. Nachdem der Text erst unterstrichen wird, kann er im nächsten Dialog auch doppelt unterstrichen werden.


Homepage (C) Copyright 1999 Arnold Willemer