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/)
-   -   FocusChanged-Message? (https://www.delphipraxis.net/94448-focuschanged-message.html)

wicht 21. Jun 2007 15:05


FocusChanged-Message?
 
Hallo Forum :)

Ich hoffe ich bin hier richtig, konnte leider nix finden wie das funktionieren könnte:
Ich habe ein Programm was ganz einfach aus einer Form besteht. Später sollte das, was ich gleich beschreibe, in ein MDI-Programm rein. Aber das ist jetzt ersteinmal egal. Also, das Programm soll am Ende auf einem Rechner laufen, der nur einen Touchscreen hat, ganz ohne Tastatur und Maus. Darum habe ich mir ersteinmal eine Bildschirm-Tastatur gebaut. Eine eigene Komponente quasi, die aus anderen Controls zusammengebaut ist. Wenn man natürlich z.B. eine Liste durchschaut, braucht man diese Tastatur nicht unbedingt, darum soll sie sich einblenden, sobald ein Textfeld den Fokus bekommt und wieder ausblenden, wenn man zum Beispiel einen Button klickt. Ich habe jetzt versucht mit TApplicationEvents (ganz einfach) Messages abzufangen und dann die Tastatur ein/ausblenden. Das Problem ist, ich habe keine Ahnung, was ich für eine Message abfangen muss, wenn sich der Fokus innerhalb der Form verändert. Oder ist der Ansatz komplett falsch? Braucht jedes Control in den Formularen einen neuen Message-Handler von mir? Oder wie oder was?

Ich würde mich freuen, wenn mir hier jemand einen kleinen Tipp geben könnte...


Grüße,

Alexander

Hawkeye219 21. Jun 2007 15:26

Re: FocusChanged-Message?
 
Hallo Alexander,

ich kann dir nur sagen, welche Mittel Delphi bereitstellt: Delphi-Referenz durchsuchenScreen.ActiveForm und Delphi-Referenz durchsuchenScreen.ActiveControl. Beide Eigenschaften wertet man sinnvollerweise in einer Behandlungsroutine für das Ereignis Delphi-Referenz durchsuchenTScreen.OnActiveControlChange aus.

Vielleicht gibt es die genannten Eigenschaften und Events ja auch im C++ Builder.

Gruß Hawkeye

wicht 22. Jun 2007 06:28

Re: FocusChanged-Message?
 
So einfach... dankeschön!
Die Eigenschaften gibt es auch im C++ Builder (TScreen->OnActiveControlChange, TScreen->ActiveControl). Funktioniert wunderbar.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:27 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