Hallo zusammen
Habe ein ähnliches Problem, wie es auch schon vorgekommen ist, allerdings habe ich keine passende Lösung für mich gefunden.
Folgende Situation:
Ich möchte, dass wenn man auf close klickt, dann der Timer auf true gesetzt wird, danach die procedure TForm1.Timer3Timer ausgeführt wird, und danach das Programm beendet wird.
Der aktuelle Programmcode:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20:
| procedure TForm1.Timer3Timer(Sender: TObject); begin if (form1.Width > 2) AND (form1.Height > 2) then begin form1.Width:=form1.Width-2; form1.Left:=form1.Left+1; form1.Top:=form1.Top+1; form1.Height:=form1.Height-2; end; if (form1.Top>800) then begin schliessen:=true; end; end;
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin CanClose:=false; form1.Timer3.Enabled:=true; CanClose:=true; end; |
Wie schaff ich es, dass das CanClose:=true; wartet, bis der Timer auf false gesetzt ist?
Mit
if (form1.timer3.enabled=false) hat es nicht funktioniert.