Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Delphi: Form im Panel - Problem mit OnShortCut (https://www.delphipraxis.net/109101-delphi-form-im-panel-problem-mit-onshortcut.html)

webcaruso 24. Feb 2008 15:09


Delphi: Form im Panel - Problem mit OnShortCut
 
Hallo Spezialisten.

Ich bastle gerade eine Anwendung, die mit einer Navigation auf der linken Seite arbeitet und im rechten Bereich jeweils eine Modulform anzeigt. Dazu "quetsche" ich die Form jeweils in ein TPanel. Das klappt auch soweit ganz gut.

Das Problem ist nun, dass ich auf den Modulforms Buttons angelegt habe, die mit Shortcuts (z.B. F5) angesprochen werden sollen.
Da das Panel der Mainform jeweils Parent der Form ist, scheint die Mainform die Shortcuts "abzugreifen", d.h. die Tastendrücke gelangen immer nur zur Mainform, das Event der Modulform wird gar nicht erst aufgerufen.

Wie kann ich die Shortcuts in der Modulform abfangen? Ich habe schon versucht mit ApplicationEvents zu arbeiten, aber dann kommen die Events auch dann an, wenn die Form gar nicht sichtbar ist.


MfG

Jan

Muetze1 24. Feb 2008 15:12

Re: Delphi: Form im Panel - Problem mit OnShortCut
 
Ich denke mal, du willst bzw. kannst dein Konzept nicht so einfach mal abändern, oder? Grundsätzlich sind für den Weg den du bestritten hast TFrame Nachfahren gedacht (anstatt TForm). Diese sind genau dafür gemacht und diese werden von VCL direkt unterstützt und eingebettet. Die ShortCuts werden dabei auch ordentlich gehandlet: sprich: mit Frames hättest du das Problem erst gar nicht...

Zu dem aktuellen Stand: Ich habe im Moment erstmal keinen Ansatzpunkt.

webcaruso 24. Feb 2008 15:19

Re: Delphi: Form im Panel - Problem mit OnShortCut
 
Vielen Dank für die schnelle Antwort. Im Prinzip ließe sich darüber reden :)

Bitte die Frage entschuldigen, aber kann ich das Frame ähnlich der Form benutzen, sprich darauf Komponenten benutzen und den Code getrennt halten?

Außerdem scheint es im TFrame kein Event OnShortCut zu geben :x

Muetze1 24. Feb 2008 15:43

Re: Delphi: Form im Panel - Problem mit OnShortCut
 
Die Frames sind im Designer wie Formulare. Du hast eine Form, kannst die Oberflächen darauf erstellen und auch implementieren mit dem Code für die Oberfläche etc. Wie gesagt: sie sind genau dafür da.

Einfach mal eine neue Frame anlegen und zusammen klicken. Dann kann entweder zur Laufzeit die Frame instanziiert werden oder schon zur Designzeit über die Palette direkt eingefügt werden.

Und das OnShortCut lässt sich mit einem Handler für WM_KEY einfach nachbilden.

webcaruso 24. Feb 2008 15:54

Re: Delphi: Form im Panel - Problem mit OnShortCut
 
Alles klar, dann werde ich diesen Weg versuchen.

Vielen Dank erstmal!


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:02 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz