Hmmm, ich dachte OnShow kam erst
nach dem Anzeigen, aber es ist doch vorher.
Ist aber auch etwas verwirrend, da dieses Event intern CM_SHOWINGCHANG
ED heißt.
Und es wird auch nur aufgerufen, wenn der Status über die
VCL geändert wird (Visible, Show oder Hide),
aber nicht wenn man es über die
WinAPI daran vorbei ändert (ShowWindow mit SW_SHOWNORMAL oder SW_HIDE).
Und statt einem eigenen Event (siehe "MessageAfterShow"), kann man auch ein Anderes verwenden.
Delphi-Quellcode:
procedure TMyForm.FormShow(Sender: TObject);
begin
TThread.ForceQueue(nil, procedure
begin
//AfterShow(Self);
Dialog.Execute;
end);
end;