Cara Membuat Aplikasi Teracopy di Delphi 7
Selamat
siang agan-agan , lagi-lagi mendung menjelang hujan.Namun bukan alasan
untuk tidak bersemangat.Pada postingan kali ini saya akan menyajikan
tutorial mengenai Cara Membuat Aplikasi Teracopy di Delphi 7.Sudah
tau kan apa itu Teracopy !?Benar sekali (kok jadi mirip Dora -,-”
),Teracopy merupakan aplikasi untuk mengkopi file secara cepat.Silahkan
googling kalau belum ngeh.Dan kita , akan membuatnya di Delphi 7.Penasaran dong gimana bikinnya !? Makanya , terus ikutin sampe selesai.Pertama , ya buka dulu Delphi 7 nya.Sebelum itu , saya akan menjelaskan sedikit alur kerja
program
ini.Ketika user menekan tombol copy , maka akan tampil open dialog yang
berfungsi mencari file yang akan di copy , setelah terpilih maka akan
muncul save dialog dimana kita akan menyimpan file yang telah
terpilih.Lalu proses pengkopian pun terjadi dengan di tampilkannya sisa
waktu copy file serta posisi progress bar sebagai acuan proses
copy.Ngerti !? Tentu saja enggak !! haha.Okey deh , kita praktekan
saja.Tambahkan 1 buah TButton , 2 TLabel , 1 buah TProgressBar , 1 buah
TOpenDialog dan 1 buah TSaveDialog.Jika sudah , susun
component-component tersebut sesuai gambar berikut
Jika
sudah , sekarang saatnya untuk koding !! Pertama , kita akan membuat
tampilan awal ketika aplikasi di jalankan.Yaitu tampilan label1 menjadi
kosong , dan progress position di 0.Maka dari itu , kita akan membuat
procedure dengan nama , procedure kondisiAwal.Ketikan kode berikut
setelah {$R *.dfm}
- procedure kondisiAwal;
- begin
- with Form1 do
- begin
- Label1.Caption:=”;
- ProgressBar1.Position:=0;
- end;
- end;
Panggil procedure tersebut pada Form1 event onShow.Ketikan kode berikut
- procedure TForm1.FormShow(Sender: TObject);
- begin
- kondisiAwal;
- end;
Nah
, selanjutnya kita akan membuat procedure copyFile.Yang tentu saja
berfungsi untuk mengkopi file XD.Ketikan kode berikut setelah procedure
kondisAwal.
- procedure copyFile(sumber, tujuan: string);
- var
- dariFile, keFile: file of byte;
- Buffer: array[0..4096] of char;
- NumRead: integer;
- ukuranFile: longint;
- t1, t2: DWORD;
- maksimal: integer;
- begin
- with Form1 do
- begin
- AssignFile(dariFile, sumber);
- reset(dariFile);
- AssignFile(keFile, tujuan);
- rewrite(keFile);
- ukuranFile := FileSize(dariFile);
- with Progressbar1 do
- begin
- Min := 0;
- Max := ukuranFile;
- t1 := GetTickCount;
- maksimal := Max div 4096;
- while ukuranFile > 0 do
- begin
- BlockRead(dariFile, Buffer[0], SizeOf(Buffer), NumRead);
- ukuranFile := ukuranFile - NumRead;
- BlockWrite(keFile, Buffer[0], NumRead);
- t2 := GetTickCount;
- Min := Min + 1;
- // menampilkan waktu di label1
- label1.Caption := FormatFloat(’0.00′, ((t2 - t1) / min * maksimal - t2 + t1) / 100)+‘ detik’;
- Application.ProcessMessages;
- Position := Position + NumRead;
- end;
- CloseFile(dariFile);
- CloseFile(keFile);
- end;
- end;
- end;
Procedure
tersebut berfungsi menggandakan file dan menghitung sisa waktu
transfer file.Selanjutnya , double klik button1 , dan ketikan kode
berikut.
- procedure TForm1.Button1Click(Sender: TObject);
- var sumber , tujuan:String;
- begin
- if OpenDialog1.Execute then //jika file terpilih
- begin
- sumber:=OpenDialog1.FileName;
- SaveDialog1.FileName:=sumber;
- if SaveDialog1.Execute then // jika tujuan terpilih
- begin
- tujuan:=SaveDialog1.FileName;
- copyFile(sumber,tujuan);//procedure copyFile dipanggil
- ShowMessage(‘Proses Copy Selesai’);
- kondisiAwal;
- end;
- end;
Taraaaa
!! Beres deh.Jalankan program anda lalu klik Button1.Pilih file yang
akan di copy lalu pilih lokasi tujuan copy.Usahakan pilih file yang agak
besar sekitar 20 Mb , agar terlihat ketika progress bar bekerja , dan
sisa waktu copy di tampilkan.Okey deh , sekian tutorial kali ini ,
semoga bermanfaat.
sumber : http://aulia.allalla.com/1/2012/07/cara-membuat-aplikasi-teracopy-di-delphi-7/
No comments:
Post a Comment