AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

MessageDlg mit OnHelp

Ein Thema von ralfiii · begonnen am 19. Nov 2014 · letzter Beitrag vom 21. Nov 2014
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.746 Beiträge
 
Delphi 12 Athens
 
#1

AW: MessageDlg mit OnHelp

  Alt 19. Nov 2014, 12:58
Hatte es auch so gemacht
Delphi-Quellcode:
procedure TForm23.Form23Click(Sender: TObject);
begin
  MessageDlg('xx', mtInformation, [mbYes, mbHelp], 3);
end;

function TForm23.ApplicationEvents1Help(Command: Word; Data: NativeInt; var CallHelp: Boolean): Boolean;
begin
  ShowMessage('Help');
end;
und da es dann an der gezeigten Stelle knallt, würde es dort reichen, wenn man in FExtendedViewerList etwas rein tut, also über RegisterViewer einen IHelpManager registriert?

[edit]
Der Grund ist, daß der Help-Button in diesen Dialogen sich direkt an GetHelpSystem > HelpSystem.Hook wendet und nicht über Application.DoHelp geht.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (19. Nov 2014 um 13:03 Uhr)
  Mit Zitat antworten Zitat
CCRDude

Registriert seit: 9. Jun 2011
678 Beiträge
 
FreePascal / Lazarus
 
#2

AW: MessageDlg mit OnHelp

  Alt 21. Nov 2014, 09:48
Hmmm... Delphi 2010? Ich glaube selbst in XE muss man den Support für .chm noch explizit angeben. Ich erinnere mich grob (sitze gerade nicht an dem Rechner) dass ich dafür explizit die Unit HTMLHelpViewer brauche. Sonst würde er noch uraltes .hlp wollen.

Vielleicht scheitert er ja am Format, sieht daher keine kontextsensitive Hilfe installiert?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.746 Beiträge
 
Delphi 12 Athens
 
#3

AW: MessageDlg mit OnHelp

  Alt 21. Nov 2014, 10:39
Bei Uns ist es so, daß ich das OnHelp selber verarbeite
und im Hintergrund keine Hilfedatei mehr direkt angebunden ist.

Vorher war es eine HLP, aber das funktioniert ja nicht mehr (standardmäßig kein Viewer in aktuellen Windowsen) und sonst gibt es einfach kein Hilfesystem, welches immer und überall problemlos funktioniert.


Alle Forms bekommen automatisch einen HelpContext 100 zugewiesen.

Und dann wird in OnHelp auf das ActiveControl und dann Richtung Form deren Parents (Panels, TabControls, GroupBoxen, Form) geprüft, ob in der DB eine Hilfeverlinkung (FormName+ControlName) existiert.
Im Hintergrund gibt es dort keine einzelne Hilfedatei mehr. Geht dann alles auf die HTML-Hilfe von Help&Manual.

Die Hilfedateien liegen dann entweder in einem Verzeichnis, oder auf einem Webserver.
Bei vielen Kunden gibt es keinen oder nur einen eingeschränkten Internetzugang, also ist der Webserver nicht erreichbar.
HTML-Dateien im Internetexplorer zu laden funktioniert nicht immer, da Netzlaufwerke als unsicher angesehen werden (von Microsoft) und die Hilde dann nicht oder nur teilweise geladen wird (JS und CSS wird gern blockert), also gibt es im Netzwerk einen kleinen selbstgeschrieben Hilfe-Server (TidHTTPServer), welcher nur unsere Hilfedateien ausliefert.
HTTP über Post 212 (211 = DataSnap) wird vom IE nicht als problematisch angesehn.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:47 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz