![]() |
Kontextsensitive Hilfe funktioniert nicht wenn Form in Main-Form eingebunden wird
Hallo zusammen
ich habe eine Hilfe mit ContextID erstellt. Im Mainform steht im Create
Delphi-Quellcode:
Application.Helpfile := ExtractFilePath(ParamStr(0)) + 'HELP.CHM';
Über das Menü ist F1
Delphi-Quellcode:
hinterlegt
procedure TfrmMain.miHelp1Click(Sender: TObject);
begin Application.HelpShowTableOfContents; end; Öffne ich jetzt ein eigenständiges Form das mit
Delphi-Quellcode:
definiert ist, wird die korrekte Hilfe angezeigt
HelpContext = 2000
Das MainForm selber besteht vor allem aus einem TPageControl. Wird eines der Pages geöffnet, lade ich auf den TabSheet ein eigenständiges Form
Delphi-Quellcode:
Jedem dieser Forms ist eine eigene HelpContext-ID hinterlegt.procedure TfrmMain.pcTestingChange(Sender: TObject); begin procedure MakeFormClient(aForm: TForm;aParent: TWinControl; bVisible: Boolean = True); begin aForm.BorderStyle := bsNone; aForm.Parent := aParent; aForm.Align := alClient; if bVisible then aForm.Show; end; begin if pcTesting.ActivePage = tsSelfTest then begin if frmSelfTest = nil then begin frmSelfTest := TfrmSelfTest.Create(Application); MakeFormClient(frmSelfTest, tsSelfTest); end; end Trotzdem wird immer die Haupthilfe geöffnet Ich habe auch schon versucht die HelpContext-ID den einzelnen TabSheets zu hinterlegen, aber auch das funktioniert nicht. Die HelpContext-ID sind immer im Objekt-Inspektor definiert. Einzige Lösung die ich bisher gefunden habe ist:
Delphi-Quellcode:
und hinter F1
procedure TfrmMain.pcTestingChange(Sender: TObject);
begin iHelpContext:= pcData.ActivePage.HelpContext; end;
Delphi-Quellcode:
Das bedeutet aber, dass ich immer selber drauf achten muss die HelpContext-ID korrekt zuzuweisen.
procedure TfrmMain.miHelp1Click(Sender: TObject);
begin Application.HelpContext(iHelpContext); end; Hat jemand eine Idee woran es liegen kann, dass die HelpContext-ID bei zusammengelegten Forms nicht beachtet wird? Was auch noch aufgefallen ist: - Auch wenn ich den Workaround verwende, funktioniert das eigenständige Form korrekt. Obwohl ich dort iHelpContext nicht ändere - Das eigenständige Form funktioniert auch dann, wenn ich miHelp1Click ganz entferne. Im Hauptformular wird dann aber gar keine Hilfe geöffnet - Das eigenständige Form ist als fsNormal definiert Grüße Gerd |
AW: Kontextsensitive Hilfe funktioniert nicht wenn Form in Main-Form eingebunden wird
Hat denn auch ein Control in dem eingebetteten Form den Focus?
|
AW: Kontextsensitive Hilfe funktioniert nicht wenn Form in Main-Form eingebunden wird
:oops:, das wars
Danke |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:39 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