Zitat von
Optiplex:
Hallo,
ich bräuchte eine Möglichkeit von jeder Stelle im Programm, auch von meinen Units aus, das Hauptformular zum Neuzeichnen zu zwingen. Ich dachte mir, dass das über eine Message gehen sollte. Weis hier jemand wie man dies am besten umsetzt.
SendMessage({MainForm.Handle}, wm_RefreshForm, 0, 0);
wm_RefreshForm definierst Du als
wm_RefreshForm = wm_User + 42;
und in der MainForm muss Du nur noch die Message abfangen mit
Delphi-Quellcode:
TMainForm = class(TForm)
private
procedure wmRefreshForm(var Msg: TMessage); message wm_RefreshForm;
end;
procedure TMainForm.wmRefreshForm(var Msg: Tmessage);
begin
Self.Invalidate;
end;
Sowohl der MainForm.Handle als auch wm_RefreshForm muss in all Deinen Units bekannt sein.
War es das, was Du suchst?
Gruß, Carsten