Grace à cette astuce, on est sûr que le dessin de la Form et de tous ses contrôles est terminé…
procedure TForm1.FormCreate(Sender: TObject); begin FFirstActivate := True; ... end; procedure TForm1.FormActivate(Sender: TObject); begin if FFirstActivate then begin FFirstActivate := False; Application.ProcessMessages; { ICI on est sur que tous les Controls ont étaient dessinés } ... end; end;
Il peut être quelquefois nécessaire de connaitre le TForm parent d'un composant.
Par exemple pour récupérer son Handle…
Dans l'unité Forms
:
TCustomForm
le plus haut contenant le TControl
.