In Applikation Hilfe zentral aufrufen bei Taste F1
-
Hallo,
habe nun schon viel gefunden bzgl. Tasten auswerten. KeyPreview = true führt dazu, das die Taste vor den Komponenten von der Form ausgewertet werden können. Ich möchte aber in meiner Mainform eine Hilfedatei aufrufen wenn irgendwo im Programm F1 gedrückt wird. Wie geht sowas? Oder muss ich das in jeder Form (es sind viele) separat einbauen?
Jörn
-
Du hast doch sicher in deiner MainForm ein Menü drinnen womit du auch die Hilfe öffnen kannst?
Dann setzt einfach den ShortCut des MenuItems auf F1.
-
Solltest du kein Menü haben, dann geht das doch sicher auch mit:
void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key, TShiftState Shift) { if ( Key == VK_F1 ) { AboutBox->ShowModal(); //oder halt Form1->... (wie auch immer deine Hilfe heisst) Key = 0; } }
-
Tippokrates schrieb:
Solltest du kein Menü haben, dann geht das doch sicher auch mit:
void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key, TShiftState Shift) { if ( Key == VK_F1 ) { AboutBox->ShowModal(); //oder halt Form1->... (wie auch immer deine Hilfe heisst) Key = 0; } }OK aber dann musst du KeyPreview bei allen Formularen auf true stellen und auf allen Formularen den Code rein setzten, mit dem ShortCuts gilt es für die ganze Anwendung!
-
Hi,
habe ich probiert. geht auch wenn nur die Mainform aktiv ist. Wenn ich jetzt von der Mainform aus eine zweite Form Modal aufmache geht es nicht...habe einfach nur die OnClick Routine des Menüs genommen....void __fastcall TfrmMain::mnuHilfeInhaltClick(TObject *Sender) { ShowMessage("Help"); } //---------------------------------------------------------------------------