![]() |
Dispatch Probleme
Hallo erstmal,
ich hab da eine Componente(TCustomcontrol) von der aus ich den Dispatch seines Owners Aufrufe um eine Message zu verteilen die sich an einige CheckBoxen auf dem Formular richtet(Owner ist ein Formular).
Delphi-Quellcode:
leider errreiche ich immer nur den Default Handler statt diesen
Msg.Msg := WM_ReEvaluate;
Tform(Owner).Dispatch(Msg); Handler ....
Delphi-Quellcode:
...
Procedure WM_ReEvaluate_Message(var message : TMessage); Message WM_ReEvaluate;
Delphi-Quellcode:
Procedure TFirmaCheckBox.WM_ReEvaluate_Message(Var message : TMessage);
Begin ReEvaluate; end; Procedure TFirmaCheckBox.ReEvaluate; var wert:Boolean; Begin Wert := Checked; if assigned(FReEvaluate) then FReEvaluate(self, wert); Checked := Wert; end; Was mache ich falsch? |
Re: Dispatch Probleme
Weil du TForm1(Owner).Dispatch(Msg); aufrufen müssstest und nicht die Funktion der Form-Klasse (?) rate ich einfach mal.
Ansonsten benutz doch einfach SendMessage. |
Re: Dispatch Probleme
äh.. nein Vjay hundert pro NICHT auf TForm1 casten.
Wenn ich Sendmessage an Tform(Owner).handle mache Verteilt ein Nachkommen von TForm /TCustomForm diese dann an die Controls Liste? |
Re: Dispatch Probleme
OK ich glaub ich habs. Denke mal das ich die Funktion
von Dispatch falsch verstanden hab. muss wohl doch den Kompletten Control-Baum desFormulars und seiner Untercontrols durch durchsuchen. oder? |
Re: Dispatch Probleme
Ok ich glaub ich hab doch eine Lösung: Broadcast(Msg) ist die Lösung.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:34 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