![]() |
Ist Autocomplete Fenster offen?
Hallo,
auf einem Editfeld (TEdit) kann man ![]() Ist es möglich zur Laufzeit festzustellen ob das kleine Fenster offen ist? Vielleicht kriegt man ein Ereignis, wann das Fenster geöffnet und geschlossen wird? Gruß marcos |
Re: Ist Autocomplete Fenster offen?
Hallo
An das Handle des Autocomple Fenster kommst du durch Senden der Nachricht CBEM_GETEDITCONTROL.
Delphi-Quellcode:
Die Frage stellt sich nun, wie man feststellen kann, ob dieses Fenster sichtbar ist?
SendMessage(DeinEdit.Handle, CBEM_GETEDITCONTROL, 0, 0)
Mit IsWindowVisible, GetWindowPlacement (z.B. Höhe des Fensters ermitteln) bin ich leider nicht erfolgreich gewesen. Vielleicht hat ja sonst noch jemand eine Idee. PS: Was genau möchtest du denn machen? |
Re: Ist Autocomplete Fenster offen?
Mein Editfeld ist in einem modalen Dialog. In dem Dialog sind OK und Cancel Button so definiert, dass beim Drücken Enter und ESC werden die Buttons automatisch aktiviert (Property Default oder Cancel auf dem Button auf TRUE). Jetzt wenn, das Autocomplete-Fenster erscheint und man mit Enter die Auswahl macht (oder mit ESC die Auswahl abbricht), dann werden auch automatisch die Aktionen für OK oder Cancel Buttons ausgeführt und Dialog wird geschlossen. Mein Ziel ist in dem Fall die Aktionen für OK/Cancel zu unterbinden. Wenn also Autocomplete-Fenster offen ist und man drückt Enter/ESC, dann sollte man in Editfeld bleiben.
marcos |
Re: Ist Autocomplete Fenster offen?
Es gibt ein Interface
![]() marcos |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:59 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