vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück
Rubrik: Hilfe   |   VB-Versionen: VB.NET21.05.07
HTML-Hilfe in VB.Net "Orcas"

Anwendung des HelpProviders in VB.Net "Orcas"

Autor:   Karl-Werner RiegerBewertung:     [ Jetzt bewerten ]Views:  13.323 
ohne HomepageSystem:  WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11kein Beispielprojekt 

Dieses Thema wird sehr ausführlich auf dieser Internetseite behandelt:
http://www.help-info.de/de/Visual_Basic_net/vbnet.htm

Allerdings hat sich inzwischen schon wieder ein wenig getan. Bei VB.Net "Orcas" gestaltet sich die Hilfsanwendung noch etwas einfacher als bei den älteren Versionen. Es ist nahezu ohne eine Zeile Code möglich, eine komplette HTML-Hilfe in ein Projekt einzubinden. Dazu sind folgende Schritte nötig:

  1. Man erstellt eine HTML-Hilfe (chm-Datei) und versieht die einzelnen Themen mit eindeutigen Topic-ID's. ("Helpmaker" z.B. ist zwar nicht das professionellste Mittel, aber sehr einfach zu bedienen und Freeware!)
  2. Man fügt jedem Formular im VB.Net-Projekt eine HelpProvider-Komponente hinzu (der Button mit der "F1"-Bezeichnung aus der Werkzeugkiste). Dieser Komponente gibt man unter der Eigenschaft HelpNameSpace den Pfad zur Hilfe-Datei an. Das wird normalerweise während der Laufzeit zu erledigen sein, da das Programm später ja auch auf anderen Rechnern laufen und seine Hilfe finden soll. Also unter Form_Load sollte dann eine Codezeile auftauchen, wie diese:
    HelpProvider1.HelpNamespace = Application.StartupPath & "\Hilfe\MyProghilfe.chm"
  3. Jetzt hat man Folgendes erreicht. Jedem Hilfe-fähigen Element dieses Formulars werden jetzt zusätzlich drei Eigenschaften für seine Hilfe hinzugefügt:
  • HelpKeyword on HelpProvider1
  • HelpNavigator on HelpProvider1
  • HelpString on HelpProvider1

Mit diesen drei Eigenschaften kann man eigendlich alles regeln, was das Herz begehrt solange man sich mit der Keyboardtaste "F1" oder dem Helpbutton des Formulars "?" zufrieden gibt.

Je nachdem, welche dieser drei Eigenschaften man wie bestückt, wird beim Druck auf "F1" oder beim Klick mit der "Fragezeichen-Maus" auf das ausgewählte Element die gewünschte Hilfe angezeigt.

Die einfachste Möglichkeit ist die Kontexthilfe, die allerdings, wie gehabt, nur bei aktiviertem Helpbutton des Formulars funktioniert.
Hierzu gibt man einfach unter den Element-Eigenschaften einen Text unter "HelpString on HelpProvider1" ein. Dieser Text wird dann angezeigt, wenn man mit der Fragezeichen-Maus auf das Element klickt. Hierzu muss das Element allerdings "Enabled" sein. Bei inaktven Elementen wird die Kontexthilfe, die man dem übergeordneten Formular selbst zugeordnet hat angezeigt, während bei einem Klick auf das Formular selbst keine Hilfe angezeigt wird. Gibt man für das Formular also diesen Text ein: "Das Element muß aktiviert sein, damit eine Hilfe angezeigt wird!" , hat man gleich eine Nothilfe für alle deaktivierten Elemente im Form

Die anderen Möglichkeiten fasse ich in untenstehender Tabelle zusammen - die Hilfe wird angezeigt, wenn die Taste "F1" gedrückt wird und das Element den Focus hat:
(Wenn die Eigenschaften so, wie unten aufgeführt bestückt werden, ohne einen Kontext unter "HelpString on HelpProvider1" einzufügen, wird diese Hilfe auch bei Verwendung des Hilfebuttons "?" des Formulars angezeigt!)

HelpNavigator on HelpProvider1
HelpKeyword on HelpProvider1
Auswirkung/Hilfsanzeige
AssociateIndex
Mindestens ein Buchstabe
Es wird die Hilfe unter dem Reiter "Index" angezeigt, wobei das erste vorkommende Stichwort ausgewählt wird, welches den gleichen Anfangsbuchstaben hat, wie das unter "HelpKeyword on HelpProvider1"
Index
Eines der Stichwörter Ihrer Index-Liste
Es wird die Hilfe unter dem Reiter "Index" angezeigt, wobei das Stichwort ausgewählt wird, welches Sie unter "HelpKeyword on HelpProvider1" angegeben haben.
Topic
Eine Webseite z.B. "Hilfe/Thema.htm", die auf einem Server liegt. Die Serveradresse muß als Pfad unter dem HelpNameSpace des HelpProvider1 vorliegen.
Es wird die Webseite "Thema.htm" angezeigt.
TopicId
Eine Topic ID aus der Hilfedatei, aslo eine Zahl.
Der Hilfereiter "Inhalt" wird an dem Thema aufgeschlagen angezeigt, welches die unter "HelpKeyword on HelpProvider1" eingegebene Topic ID hat.
KeywordIndex
Ein Stichwort aus der Index-Liste
Zeigt den Reiter Inhaltsangabe (!!) aufgeschlagen unter dem unter "HelpKeyword on HelpProvider1" eingegebenen Stichwort.
Table of Contents
Keine Auswirkung
Die Inhaltsangabe wird an der Startseite aufgeschlagen.
Find
Irgendein Text ist notwendig!
Die Hilfe wird unter dem Reiter "Suchen" angezeigt.

Eine Hilfe auf Knopfdruck (also ohne "F1" oder Hilfebutton) lässt sich anzeigen, wenn man die auf VB.Net eingerichteten API-Funktionen verwendet:

Deklaration:

Public Declare Function HTMLHelp_BaseCall Lib "hhctrl.ocx" _
  Alias "HtmlHelpA"( _
  ByVal hWnd As IntPtr, _
  ByVal lpHelpFile As String, _
  ByVal uCommand As Int32, _
  ByVal dwData As Int32) As Int32

Dies, die Aurufe, Konstanten und alles Weitere findet Ihr unter der oben angegebenen Internetadresse.

Viel Spaß!
 

Dieser Tipp wurde bereits 13.323 mal aufgerufen.

Voriger Tipp   |   Zufälliger Tipp   |   Nächster Tipp

Über diesen Tipp im Forum diskutieren
Haben Sie Fragen oder Anregungen zu diesem Tipp, können Sie gerne mit anderen darüber in unserem Forum diskutieren.

Neue Diskussion eröffnen

nach obenzurück


Anzeige

Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6

Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
- nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten
- Symbol-Galerie mit mehr als 3.200 Icons im modernen Look
Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m.
 
   

Druckansicht Druckansicht Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel