Wie man das moderne HTMLHelp Hilfesystem in seiner eigenen Anwendung aufrufen kann, zeigt folgender Tipp: Die Position und die Größe des Hilfefensters lässt sich hierbei aber nicht festlegen. Wie das aber dennoch geht, zeigt nachfolgendes Beispiel. Wir benötigen hierzu zunächst den exakten Fenstertitel des Hilfefensters, den Sie - falls Sie die Hilfe selbst erstellt haben - ja bestens kennen sollten Warum den exakten Fenstertitel? Ganz einfach: Um ein Fenster in der Größe verändern oder neu positionieren zu können, verwenden wir die MoveWindow API-Funktion. Diese erwartet aber - wie fast alle API's - das Handle des besagten Window. Wenn man nun den exakten Fenstertitel kennt, dann kann man das Fensterhandle selbst über die FindWindow API-Funktion herausbekommen. Und das ganze sieht dann wie folgt aus: Option Explicit ' HTML-Help Private Declare Function HtmlHelp Lib "hhctrl.ocx" _ Alias "HtmlHelpA" ( _ ByVal hwndCaller As Long, _ ByVal pszFile As String, _ ByVal uCommand As Long, _ ByVal dwData As Long) As Long Const HH_DISPLAY_TOPIC = &H0 Const HH_HELP_CONTEXT = &HF ' Fenster verschieben/positionieren Private Declare Function MoveWindow Lib "user32" ( _ ByVal hwnd As Long, _ ByVal x As Long, _ ByVal y As Long, _ ByVal nWidth As Long, _ ByVal nHeight As Long, _ ByVal bRepaint As Long) As Long ' Fensterhandle ermitteln Private Declare Function FindWindow Lib "user32" _ Alias "FindWindowA" ( _ ByVal lpClassName As String, _ ByVal lpWindowName As String) As Long Private Sub cmdHelp_Click() ' Hilfe aufrufen (Startseite) Dim sHelpFile As String sHelpFile = App.Path & "\MyHelp.chm" HtmlHelp 0, sHelpFile, HH_DISPLAY_TOPIC, ByVal 0& ' Jetzt Window suchen (exakter Fenstertitel muss ' bekannt sein!) Dim sTitle As String Dim nhWnd As Long sTitle = "Hilfe zu MyProgram" nhWnd = FindWindow(vbNullString, sTitle) ' Fenster gefunden...? If nhWnd <> 0 Then ' ... dann entsprechend positionieren ' Breite: 400 Pixel, Höhe 300 Pixel ' Position: 100, 150 MoveWindow nhWnd, 100, 150, 400, 300, True End If End Sub Dieser Tipp wurde bereits 14.738 mal aufgerufen.
Anzeige
![]() ![]() ![]() (einschl. Beispielprojekt!) 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. |
sevZIP40 Pro DLL ![]() Zippen und Unzippen wie die Profis! Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. Tipp des Monats ![]() Dieter Otter PopUp-Menü wird nicht angezeigt :-( In diesem Tipp verraten wir Ihnen, wie Sie Probleme mit PopUp-Menüs umgehen können, wenn diese unter bestimmten Umständen einfach nicht angezeigt werden. sevISDN 1.0 ![]() Überwachung aller eingehender Anrufe! Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. |
||||||||||||||||
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. |