[Latest][6]

Delphi
DIY

Login

Enter your username and password to enter your Blogger Dasboard


Featured Post

Power resistor DIY

Power resistor DIY This is one simple way to create power resistor at home. I needed 0,33 ohm resistor with some larger wattage so I de...

Recent Articles

Powered By Blogger

Tuesday, May 3, 2016

Delphi Tutorial Timer

kobyx     2:29 PM     0
In this video you can learn how to work with Timer in Delphi.
You can learn how to manipulate with components using timer.

example application:https://drive.google.com/open?id=0B_njK7HczCjDOEpVMER4aFctSDQ

Here is also code used in this video :

unit MainForm;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls, ExtCtrls, pngimage;

type
  TForm1 = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    Panel3: TPanel;
    Image1: TImage;
    Button1: TButton;
    Label1: TLabel;
    Button2: TButton;
    ProgressBar1: TProgressBar;
    Timer1: TTimer;
    Timer2: TTimer;
    Timer3: TTimer;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    Button7: TButton;
    Edit1: TEdit;
    UpDown1: TUpDown;
    Edit2: TEdit;
    UpDown2: TUpDown;
    Edit3: TEdit;
    UpDown3: TUpDown;
    Edit4: TEdit;
    UpDown4: TUpDown;
    Edit5: TEdit;
    UpDown5: TUpDown;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure Timer2Timer(Sender: TObject);
    procedure Edit1Change(Sender: TObject);
    procedure Edit2Change(Sender: TObject);
    procedure Edit3Change(Sender: TObject);
    procedure Edit4Change(Sender: TObject);
    procedure UpDown1Click(Sender: TObject; Button: TUDBtnType);
    procedure UpDown2Click(Sender: TObject; Button: TUDBtnType);
    procedure UpDown3Click(Sender: TObject; Button: TUDBtnType);
    procedure UpDown4Click(Sender: TObject; Button: TUDBtnType);
    procedure Button7Click(Sender: TObject);
    procedure Timer3Timer(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure Edit5Change(Sender: TObject);
    procedure UpDown5Click(Sender: TObject; Button: TUDBtnType);
  private
    { Private declarations }
  public
   LabInt:Integer;
   ButtonTag: Integer;

   IntxL, IntxR, IntxB, IntxT : Integer;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
if Timer1.Enabled=false then
  Timer1.Enabled:=true
else
  Timer1.Enabled:=False;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
if Timer2.Enabled=false then
  Timer2.Enabled:=true
else
  Timer2.Enabled:=False;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
ButtonTag:=101;
Timer3.Enabled:=True;
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
ButtonTag:=102;
Timer3.Enabled:=True;
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
ButtonTag:=103;
Timer3.Enabled:=True;
end;

procedure TForm1.Button6Click(Sender: TObject);
begin
ButtonTag:=104;
Timer3.Enabled:=True;
end;

procedure TForm1.Button7Click(Sender: TObject);
begin
Timer1.Enabled:=False;
Timer2.Enabled:=False;
Timer3.Enabled:=False;
end;

procedure TForm1.Edit1Change(Sender: TObject);
begin
IntxL:=StrToInt(Edit1.Text);
end;

procedure TForm1.Edit2Change(Sender: TObject);
begin
IntxR:=StrToInt(Edit2.Text);
end;

procedure TForm1.Edit3Change(Sender: TObject);
begin
IntxT:=StrToInt(Edit3.Text);
end;

procedure TForm1.Edit4Change(Sender: TObject);
begin
IntxB:=StrToInt(Edit4.Text);
end;

procedure TForm1.Edit5Change(Sender: TObject);
begin
Timer3.Interval:=StrToInt(Edit5.Text) ;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin

LabInt:=0;

IntxL :=10;
IntxR :=10;
IntxB:=10;
IntxT:=10;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
LabInt:=LabInt+10;
Label1.Caption:=IntToStr(LabInt);
end;

procedure TForm1.Timer2Timer(Sender: TObject);
begin
if ProgressBar1.Position<ProgressBar1.Max then
 ProgressBar1.Position:=ProgressBar1.Position+1
else
  ProgressBar1.Position:=0;
end;

procedure TForm1.Timer3Timer(Sender: TObject);
begin
case ButtonTag of
101:
if Image1.Left>0 then
Image1.Left:=Image1.Left-IntxL
else Button4.Click;
102:
if Image1.Left<Panel2.Width then
Image1.Left:=Image1.Left+IntxR
else
Button3.Click;
103:
if Image1.Top>0 then
Image1.Top:=Image1.Top-IntxT
else
Button6.Click;
104:
if Image1.Top<Panel2.Height then
 Image1.Top:=Image1.Top+IntxB
 else
 Button5.Click;

end;

end;

procedure TForm1.UpDown1Click(Sender: TObject; Button: TUDBtnType);
begin
if Button=btNext then IntxL:=IntxL+10;
if Button=btPrev then IntxL:=IntxL-10;
Edit1.Text:=IntToStr(IntxL);
end;

procedure TForm1.UpDown2Click(Sender: TObject; Button: TUDBtnType);
begin
if Button=btNext then IntxR:=IntxR+10;
if Button=btPrev then IntxR:=IntxR-10;
Edit2.Text:=IntToStr(IntxR);
end;

procedure TForm1.UpDown3Click(Sender: TObject; Button: TUDBtnType);
begin
if Button=btNext then IntxT:=IntxT+10;
if Button=btPrev then IntxT:=IntxT-10;
Edit3.Text:=IntToStr(IntxT);
end;

procedure TForm1.UpDown4Click(Sender: TObject; Button: TUDBtnType);
begin
if Button=btNext then IntxB:=IntxB+10;
if Button=btPrev then IntxB:=IntxB-10;
Edit4.Text:=IntToStr(IntxB);
end;

procedure TForm1.UpDown5Click(Sender: TObject; Button: TUDBtnType);
begin
if Button=btNext then Timer3.Interval:=Timer3.Interval+10;
if Button=btPrev then Timer3.Interval:=Timer3.Interval-10;
Edit5.Text:=IntToStr(Timer3.Interval);
end;

end.

0 comments:

Comments

© 2014 Tutorials. Designed by Bloggertheme9. Powered by Blogger.