![]() |
WM_SETFOCUS abfangen
moin,
ich habe in meiner messageloop folgendes mit drin:
Delphi-Quellcode:
wieso habe ich nun wenn ich mein prog starte trotzdem ein caret in den edits? ich habe das event doch abgefangen oder? oder bezieht sich das nur auf das hauptfenster, wenn ja, wie fange ich das eines edits ab? (nonvcl)
WM_SETFOCUS:
begin // und noch irgendwas, aber kein CreateCaret! end; |
Re: WM_SETFOCUS abfangen
^^^
|
Re: WM_SETFOCUS abfangen
Weil EDITs eine eigene Fensterprozedur haben.
|
Re: WM_SETFOCUS abfangen
muss ich für jede kompo ne eigene messageloop erstellen? dann hab ich nachher ja mehr schleifen drin als sonstwas O_o....wie mach ich das überhaupt?
|
Re: WM_SETFOCUS abfangen
Ja, wahlweise für jede Komponente oder für jede Fensterklasse. Stichworte hierzu sind Subclassing und Superclassing. Bin mir sicher, daß Luckie dazu was in seinen Win32-Tuts zu stehen hat ;)
|
Re: WM_SETFOCUS abfangen
meiner meinung nach waren buttons usw doch auch eigene fenster oder? aber da kann ich die buttonclicks innerhalb der "hauptschleife" auch ausführen, komisch alles :\
|
Re: WM_SETFOCUS abfangen
Oh oh ;) ... hier fehlen aber Grundlagen ;)
Also WM_COMMAND und die ganzen Notifications von Kindfenstern sind hier die Zauberei :-D ... daher kannst du ganz simpel auf BN_CLICKED (etwa: Button Notification upon "Clicked") reagieren. Dennoch hat ein Button eine eigene Fensterprozedur ( - aber IMO keine eigene Schleife in dem Sinne). Die kann man aber ersetzen. Ich habe das zB in meinem Programm ![]() |
Re: WM_SETFOCUS abfangen
danke, ich werd mal reingucken ^^
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:55 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