Intégration WinHelp
L’intégration d’un fichier WinHelp dans Visual Basic est direct et très facile. Veuillez télécharger l’exemple ci-dessous écrit en VB6 :-
http://www.Fast-Help.com/download/misc/Vb_HLP_Example.zip
Intégration HtmlHelp
Si vos besoins sont relativement simples – Lorsque l’Utilisateur appuie sur F1 on affiche l’Aide pour toute forme ou contrôle qui a le focus – alors le simple tutorial ci-dessous répondra à vos questions.
Tutorial d’intégration d’un fichier HtmlHelp dans votre Application VB6
Si vous utilisez Visual Basic 6 vous devez spécifier quell fichier d’aide vous utilisez dans la propriété d’application App.HelpFile.
Par exemple : App.HelpFile = App.Path & "\helpfile.chm"
Pour qu’une fenètre d’aide apparaisse lorsque l’Utilisateur appuis sur F1, il faut que la propriété de forme WhatsThisHelp soit sur Faux. Puis le HelpContextID de la forme doit recevoir la valeur du HelpID du Sujet auquel vous voulez vous relier dans Fast-Help.
Pour trouver le N° du HelpID dans Fast-Help il faut cliquer sur l’Onglet « Propriétés » en bas de l’Editeur. Lorsque l’Utilisateur appuiera sur F1 ce Sujet s’affichera.
Vous pouvez aussi assigner des N° HelpID à des propriétés HelpContextID des contrôles dans la forme VB6. Lorsque le focus sera dans un de ces contrôles (avec un HelpContextID différent de zéro), c’est le Sujet correspondant qui s’affichera au lieu de celui lié à la Forme VB6.
Si vous préférez que le texte d’aide apparaîsse dans une petite fenètre Popup plutôt que dans le système d’aide complet, mettez la propriété de Forme WhatsThisHelpID à Vrai. Puis faites de même pour chaque propriété WhatsThisHelpID des contrôles liés à l’aide dans la forme.
Pour provoquer l’affichage d’un Sujet d’aide depuis le code Visual Basic, vous devez utiliser l’API d’appel HtmlHelp. Par exemple pour afficher dans Fast-Help le Sujet don’t le HelpID = 1234, faites :
HtmlHelp(frmMain.hWnd, App.HelpFile, HH_HELP_CONTEXT, ByVal CLng(1234))
Pour déclarer la function écrivez le code :
Public Declare Function HTMLHelp Lib "hhctrl.ocx" _
Alias "HtmlHelpA" (ByVal hwnd As Long, ByVal lpHelpFile As String, _
ByVal wCommand As Long, dwData As Any) As Long
Ou bien ajoutez le module HTMLHelp.bas à votre application VB6.
Pour des besoins d’intégration VB plus complexes
Nous vous recommandons l’exemple écrit par le Gourou VB David Liske's que vous pouvez recopier dans votre propre application depuis :
http://www.Fast-Help.com/download/misc/Vb_CHM_Example.zip
Génération d'un Fichier d’En-tête pour VB ?
Un fichier Fast-Help d’en-têtes VB est très pratique car il crée des variables spécifiques pour chaque N° HelpID, ce qui rendra le code bien plus lisible.
Dans les Options de Compilation WinHelp et HtmlHelp figure un Onglet “Support d’Application” où vous pouvez cocher l’Option de créer un fichier d’En-tête VB.
Lors de votre prochaine compilation vous trouverez ce fichier dans le répertoire de votre projet, prêt à être intégré dans votre code.