Undgå broadcast af message (riffel istedet for haglgevær)
Jeg ved ikke om jeg kan forklare tydeligt nok hvad jeg ønsker, men jeg gør et forsøg.Jeg har en form med et grid på. Fra denne kalder jeg en anden form for at ændre data i. I griddet er der nogle comboboxe og de er der også på editformen. De valgmuligheder der er i disse kan jeg så rette i en helt tredie form. Hvis jeg retter i disse, sender jeg en broadcast til alle åbne forms om at udføre en update af comboboxe.
procedure HsBrodcastUpdate;
var
i: integer;
begin
for i := 1 to Screen.FormCount - 1 do
SendMessage(Screen.Forms[i].Handle, WM_FORMUPDATES, 0, 0);
end;
På hver form hvor der skal udføres opdateringer har jeg så
procedure FormUpdate(var aMessage: TMessage); message WM_FORMUPDATES;
Det er jo ligesom at skyde med haglgevær når man burde kunne gøre det med en riffel. Jeg mener nu får alle forms en besked, men det burde være nok med den form hvor jeg har oprettet editformen fra.
Om det har nogen hastighedsmæssig betydning er jeg i tvivl om, men alligevel.