frize
asked on
Form Auto-Close with Timer
Hello .
Please Can someone correct me this Project :
It uses 2 Forms
MainForm and Form2
and Tfindfile Components and a Timer
so i want the Form2 will AutoClose after some Seconds
please see the Project for details .
TFindFile : http://www.delphiarea.com/products/findfile/findfile.zip
* How could i assign the ' Don't Show this Again
Thank you All .
Please Can someone correct me this Project :
It uses 2 Forms
MainForm and Form2
and Tfindfile Components and a Timer
so i want the Form2 will AutoClose after some Seconds
please see the Project for details .
TFindFile : http://www.delphiarea.com/products/findfile/findfile.zip
* How could i assign the ' Don't Show this Again
Thank you All .
program Project1;
uses
Forms,
Unit1 in 'Unit1.pas' {Form1},
Unit2 in 'Unit2.pas' {Form2};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
If Form2=Nil then
Form2:=TForm2.Create(Application);
Application.Run;
end.
------------- Unit1
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, FindFile;
type
TForm1 = class(TForm)
df: TFindFile;
CheckBox1: TCheckBox;
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure dfFileMatch(Sender: TObject; const Folder: String;
const FileInfo: TSearchRec);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
df.Execute;// TFindFile
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
if df.Busy then
df.Abort;
end;
Function Showp( Dir,Fn:String):Boolean;
begin
Result:=False;
If Result then
if Form2=Nil then
form2:=tform2.create(Application);
Form2.dir.Caption:=Dir;
Form2.fl.Caption:=Fn;
Form2.ShowAgain;
form2.showmodal();
//form2.free;
// How to assign the Don't Show Again
// Form1.checked=Not(Form2.CheckBox1.checked);
end;
procedure TForm1.dfFileMatch(Sender: TObject; const Folder: String;
const FileInfo: TSearchRec);
begin
IF df.Threaded then begin
if CheckBox1.Checked then
Showp(Folder,FileInfo.Name);
end;
end;
end.
----------- unit2
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm2 = class(TForm)
Button1: TButton;
Timer1: TTimer;
Label1: TLabel;
Label2: TLabel;
dir: TLabel;
fl: TLabel;
Label3: TLabel;
Label4: TLabel;
CheckBox1: TCheckBox;
procedure Timer1Timer(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure ShowAgain;
end;
var
Form2: TForm2;
Count:Integer;
implementation
{$R *.dfm}
procedure TForm2.Timer1Timer(Sender: TObject);
begin
Inc(Count,1);
Label3.Caption:=IntToStr(Count);
If Count=10 then begin
Form2.ModalResult:=MrOk;
Count:=0;
Timer1.Enabled:=False;
end;
end;
procedure TForm2.FormCreate(Sender: TObject);
begin
Count:=0;
Timer1.Interval:=100;
Timer1.Enabled:=true;
end;
procedure TForm2.ShowAgain;
begin
Timer1.Enabled:=true;
end;
end.
-----------
object Form1: TForm1
Left = 202
Top = 105
Width = 783
Height = 540
Caption = 'Form1'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
object CheckBox1: TCheckBox
Left = 80
Top = 136
Width = 273
Height = 17
Caption = 'Show Popup form'
TabOrder = 0
end
object Button1: TButton
Left = 88
Top = 16
Width = 75
Height = 25
Caption = 'Start'
TabOrder = 1
OnClick = Button1Click
end
object Button2: TButton
Left = 176
Top = 16
Width = 75
Height = 25
Caption = 'Stop'
TabOrder = 2
OnClick = Button2Click
end
object df: TFindFile
Criteria.Files.FileName = '*.zip'
Criteria.Files.Location = 'C:\'
Criteria.Files.Included.Strings = (
'*.dll')
Threaded = True
OnFileMatch = dfFileMatch
Left = 120
Top = 56
end
end
-------------
object Form2: TForm2
Left = 350
Top = 118
BorderStyle = bsDialog
Caption = 'Form2'
ClientHeight = 311
ClientWidth = 395
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
OnCreate = FormCreate
PixelsPerInch = 96
TextHeight = 13
object Label1: TLabel
Left = 0
Top = 32
Width = 29
Height = 13
Caption = 'Path :'
end
object Label2: TLabel
Left = 0
Top = 64
Width = 23
Height = 13
Caption = 'File :'
end
object dir: TLabel
Left = 32
Top = 32
Width = 12
Height = 13
Caption = 'dir'
end
object fl: TLabel
Left = 32
Top = 64
Width = 6
Height = 13
Caption = 'fl'
end
object Label3: TLabel
Left = 72
Top = 152
Width = 31
Height = 13
Caption = 'Label3'
end
object Label4: TLabel
Left = 0
Top = 152
Width = 70
Height = 13
Caption = 'AutoClose in : '
end
object Button1: TButton
Left = 168
Top = 248
Width = 75
Height = 25
Caption = 'Button1'
ModalResult = 1
TabOrder = 0
end
object CheckBox1: TCheckBox
Left = 8
Top = 192
Width = 249
Height = 17
Caption = 'Don''t Show Me this Window Again '
TabOrder = 1
end
object Timer1: TTimer
Enabled = False
OnTimer = Timer1Timer
Left = 32
Top = 232
end
end
--------------
ASKER CERTIFIED SOLUTION
membership
Create a free account to see this answer
Signing up is free and takes 30 seconds. No credit card required.
you want to show a Form2 and then close it after a while or after something has happened ?
what is you want to do exactly ?
without using code