![]() |
Perform(WM_NEXTDLGCTL in Frames
Moin...:P
ich bräuchte mal eure Hilfe... :wink: Gegeben: 1. Die GUI ist organisiert in Frames welche im Tabs liegen. 2. Diverse Frames werden in einem Formcontainer dargestellt. (Modal) Nun wollte ich das "mit ENTER zum nächsten Feld" in den nackigen Frames implementieren.
Delphi-Quellcode:
Da tut sich nix weil im Frame der Handler der Message nicht implementiert ist...:?
Perform(WM_NEXTDLGCTL, 0, 0);
Dann habe ich die Message implementiert. (geklaut aus CustomForm) 8-)
Delphi-Quellcode:
Macht das überhaupt einen Sinn das selbst zu implementieren oder statt dessen eine Form als Container zu benutzen? Geht das vieleicht einfacher? :wink:
procedure TfrBase.SetNextControl(var Message: TWMNextDlgCtl);
begin if Message.Handle then begin Windows.SetFocus(Message.CtlFocus); end else begin SelectNext(???, not BOOL(Message.CtlFocus), True); // wie komme an das Active Control? end; end; Danke...:P |
AW: Perform(WM_NEXTDLGCTL in Frames
Kannst du dir nicht den Umweg über WM_NEXTDLGCTL sparen und direkt SelectNext aufrufen?
|
AW: Perform(WM_NEXTDLGCTL in Frames
Moin...:P
...und dafür brauche ich das ActiveControl welches in TForm implementiert ist. :wink: Mit den ganzen Messages komme ich nicht ganz zurecht. Was brauche ich für mein Vorhaben? 1., 2. usw. 8-) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:01 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 by Thomas Breitkreuz