Kali ini penulis akan berbagi bagaimana cara menghitung selisih tanggal di delphi. Di sini penulis akan coba paparkan beberapa cara, dari yang super simple sampai yang lumayan panjang source codenya, Tapi pada dasarnya semua sama saja tergantung kita mau memakai yg mana.
Langkah 1 :
Desainlah form seperti dibawah ini :
Langkah 2 :
Masukkan source code dibawah ini di dalam datetimepicker2 pada evants kemudian klik double pada event change. (Source Code 1)
Langkah 3 :
Misalkan kita ingin menghitung suatu biaya dari selisih tanggal tersebut copy paste source code berikut di edit1.
Langkah 4 :
Silahkan dijalankan dan hasilnya seperti ini.
Langkah 5 :
Di bawah ini penulis juga akan tunjukkan beberapa source code alternatif silahkan pilih yang mana yang mudah bagi pembaca.
Langkah 6 :
Selamat mencoba :D
Langkah 1 :
Desainlah form seperti dibawah ini :
Langkah 2 :
Masukkan source code dibawah ini di dalam datetimepicker2 pada evants kemudian klik double pada event change. (Source Code 1)
procedure TForm1.DateTimePicker2Change(Sender: TObject); begin Edit1.Text:=FloattoStr(StrtoDate(DateToStr(DateTimePicker2.Date))-StrtoDate(DateToStr(DateTimePicker1.Date))); end;
Langkah 3 :
Misalkan kita ingin menghitung suatu biaya dari selisih tanggal tersebut copy paste source code berikut di edit1.
procedure TForm1.Edit1Change(Sender: TObject); var harga:integer; begin harga:=1000; Edit2.Text:=IntToStr(StrToInt(Edit1.Text)*harga); end;
Langkah 4 :
Silahkan dijalankan dan hasilnya seperti ini.
Langkah 5 :
Di bawah ini penulis juga akan tunjukkan beberapa source code alternatif silahkan pilih yang mana yang mudah bagi pembaca.
procedure TForm_kembali.DateTimePicker4Change(Sender: TObject); var a:Integer; b:String; //membuat variabel bantu begin b:= IntToStr(trunc(DateTimePicker4.Date)-trunc(DateTimePicker3.Date)); //menghitung selisih hari Edit7.Text:=IntToStr(strtoint(b)-0); //pengurangan dengan hari max peminjaman -1 if StrToInt(Edit7.Text) > 0 then //apakah selisih hari > dari 6 ??? begin //jika ya Label15.caption:=’Lebih'; Label17.caption:=’hari'; a:=StrToInt(Edit7.Text)*500; Edit5.Text:=FloatToStr(a); end else begin //jika tidak Label15.caption:=”; Label17.caption:=’Tidak dikenakan Denda'; Edit5.Text:=’0′; end; end; //selisih tanggal Edit1.Text:= FloattoStr(StrtoDate(DateToStr(DateTimePicker2.Date))-StrtoDate(DateToStr(DateTimePicker1.Date)));
Langkah 6 :
Selamat mencoba :D
Mantapp Om, tp saya pingin tau gimana caranya supaya hitung selisih otomatis saat form tampil, niatnya saya mau gabungkan sama dbgrid, jadi pas data muncul otomatia menghitung...
BalasHapusTerima kasih sebelumnya...