Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.139 Beiträge
 
Delphi 12 Athens
 
#6

AW: Problem mit Rückgabewert bei ShowModal

  Alt 17. Mär 2021, 12:41
Zitat:
gestartet
Er lässt die Fenster automatisch erstellen.
Und da wird es wohl vorgekommen sein, dass der Timer schon auslöste, bevor die Form2 erstellt wurde.

Warum wird die Form überhaupt automatisch erstellt, anstatt erst dann, wenn sie benötigt wird?
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
var
  F: TForm2;
begin
  Timer1.Enabled := false;
  F := TForm2.Create(nil);
  try
    if F.ShowModal = mrOk then
      ...
  finally
    F.Free;
  end;
end;
Zitat:
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  ...
  Form1.Timer1.Enabled := false;
Du bist bereits in TForm1, dort verwendet man niemals diese globale Variable.
Wenn man unbedingt eine Variable benötigt, dann nimmt man hierfür das Self.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat