Avatar billede hugopedersen Nybegynder
04. maj 2012 - 09:46 Der er 1 løsning

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.
Avatar billede hugopedersen Nybegynder
07. maj 2012 - 19:22 #1
Det var der så ingen respons på - jeg søger i udlandet i stedet.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester