Nur um mal mit dieser Mär mit den modalen Forms, die sich angeblich nicht von aussen schliessen lassen, aufzuräumen habe ich hier ein Beispiel-Code
Delphi-Quellcode:
unit Form.Main;
interface
uses
Winapi.Windows,
Winapi.Messages, System.SysUtils, System.Variants, System.Classes,
Vcl.Graphics,
Vcl.Controls,
Vcl.Forms,
Vcl.Dialogs,
Vcl.ExtCtrls,
Vcl.StdCtrls,
Form.Dialog;
type
TMainForm =
class( TForm )
Button1: TButton;
Timer1: TTimer;
{ Enabled = False, Interval = 5000 }
procedure Timer1Timer( Sender: TObject );
procedure Button1Click( Sender: TObject );
private
FDialogForm: TDialogForm;
public
{ Public-Deklarationen }
end;
var
MainForm: TMainForm;
implementation
{$R *.dfm}
procedure TMainForm.Button1Click( Sender: TObject );
begin
FDialogForm := TDialogForm.Create(
nil );
try
Timer1.Enabled := True;
FDialogForm.ShowModal;
Timer1.Enabled := False;
finally
FreeAndNil( FDialogForm );
end;
end;
procedure TMainForm.Timer1Timer( Sender: TObject );
begin
if Assigned( FDialogForm )
then
FDialogForm.Close;
end;
end.
Die DialogForm ist ein simple Form.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)