Posted by : rynsuji.blogspot.com Minggu, 23 November 2014

PROGRAM HITUNG MUNDUR

Program ini di buat menggunakan Delphi 7. Program ini adalah tentang menghitung waktu mundur, bisa di bilang program ini seperti stopwatch, disini saya akan menerapkannya pada pemrograman delphi. Sebenarnya program ini sangat sederhana karena cara kerja dari program ini adalah kita hanya diminta untuk memasukan inputan berapa waktu yang di inginkan untuk menghitung mundur. Ketika kita klik button mulai maka akan waktu yang kita inputkan akan berjalan mundur sampai waktu tersebut habis, ketika kita klik button stop maka waktu tersebut akan berhenti dan ketika kita klik button keluar maka program akan keluar. Program ini menggunakan label, button, date timepicker, timer dan progressbar. Berikut source codenya :
unit uUtama;

interface

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

type
  TForm1 = class(TForm)
    DTWaktu: TDateTimePicker;
    Label1: TLabel;
    Button1: TButton;
    ProgressBar1: TProgressBar;
    Label2: TLabel;
    Button2: TButton;
    Label3: TLabel;
    Timer1: TTimer;
    Button3: TButton;
    Timer2: TTimer;
    procedure Button1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Timer2Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

const
  INFO = WM_USER + 1;

var
  Form1: TForm1;
  a:string;
  ITime : TTime;// Variabel
implementation

uses DateUtils;//Uses ini dulu

{$R *.dfm}



procedure TForm1.Button1Click(Sender: TObject);
var
  h,m,s : word;
  sec,jam,menit,detik : word;
  incs : word;
begin
ProgressBar1.Position := 0;
h := HourOf(DTWaktu.Time);
m := MinuteOf(DTWaktu.Time);
s := SecondOf(DTWaktu.Time);
incs := (h*Sqr(60)) + (m*60) + s;
ITime := Now();
ITime := IncSecond(ITime,incs);

sec := SecondsBetween(Now(),ITime);
jam := sec div 3600;
menit := (sec mod 3600) div 60;
detik:= (sec mod 3600) mod 60;
Label3.Caption := 'Sisa waktu : '+IntToStr(jam)+' jam '+IntToStr(menit)+' menit                                   '+IntToStr(detik)+' detik';
ProgressBar1.Max := sec;
Button1.Enabled := false;
Button3.Enabled := true;
Timer1.Enabled := true;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Application.Terminate;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
ProgressBar1.Position := 0;
DTWaktu.Time := EncodeTime(0,0,10,0);
Timer1.Enabled := false;
Timer1.Enabled := false;
Button1.Enabled := true;
Button3.Enabled := false;
Label3.Caption := '-||-';
end;

procedure TForm1.FormCreate(Sender: TObject);
var
  hSysMenu: HMENU;
begin
hSysMenu := GetSystemMenu(Handle, false);
AppendMenu(hSysMenu, MF_SEPARATOR, 0, nil);
AppendMenu(hSysMenu, MF_STRING, INFO, PChar('&Tentang...'));
Timer1.Enabled := false;
Timer1.Interval := 500;
a:='Riyan Susilo Adji ';
end;



procedure TForm1.Timer1Timer(Sender: TObject);
var
  sec,jam,menit,detik : word;
begin
if ProgressBar1.Position = ProgressBar1.Max then
  begin
    Timer1.Enabled := false;
    Button1.Enabled := true;
    Button3.Enabled := false;
  end
else
  begin
    sec := SecondsBetween(Now(),ITime);
    ProgressBar1.Position := ProgressBar1.Max - (sec -1);
    jam := sec div 3600;
    menit := (sec mod 3600) div 60;
    detik:= (sec mod 3600) mod 60;
    Label3.Caption := 'Sisa waktu : '+IntToStr(jam)+' jam '+IntToStr(menit)+' menit                                  '+IntToStr(detik)+' detik';
  end;
end;

procedure TForm1.Timer2Timer(Sender: TObject);
var 
i: Integer; 
begin 
Application.Title := a; 
Form1.Caption := a; 
for i := 1 to (length(a) - 1) do
a[i] := Application.Title[i + 1];
a[Length(a)] := Application.Title[1];
end;

end.

Berikut tampilan outputnya :



              Bagi yang ingin mendownload silahkan klik Di Sini!!!


Leave a Reply

Subscribe to Posts | Subscribe to Comments

Welcome to My Blog

Popular Post

Blogger templates

Diberdayakan oleh Blogger.

BLOG BLOG

BLOG BLOG

- Copyright © TRANSFORMERS ADDICT -Robotic Notes- Powered by Blogger - Designed by Johanes Djogan -