Selamat siang agan-agan.Postingan kali ini akan membahas mengenai Cara Menggunakan Case Of di Delphi 7.Case of berfungsi layaknya keyword if then else.Yaitu mengolah percabangan dari beberapa pilihan.Bingung dan mumet !? Saya juga.Lebih baik saya contohkna dengan praktek saja.Untuk mengikuti praktek ini , agan harus membaca terlebih dahulu arikel SEBELUMNYA sebagai perbandingan dengan praktek yang akan kita lakukan sekarang.Bila sudah , silahkan cari kode berikut :
procedure TForm1.Button1Click(Sender: TObject);
var harga_minum , harga_makan , harga_dessert , total : real; //variable tambahan
begin
if RadioGroup1.ItemIndex = 0 then
begin
harga_minum := 2000;
end
else
if RadioGroup1.ItemIndex = 1 then //pilihan menu minuman
begin
harga_minum := 3000;
end
else
begin
harga_minum := 1000;
end;
if ComboBox1.Text = 'Nasi Ayam' then
begin
harga_makan := 5000;
end
else
if ComboBox1.Text = 'Nasi Rawon' then //pilihan menu makanan
begin
harga_makan := 6000;
end
else
begin
harga_makan := 3000;
end;
if ComboBox2.Text = 'Semangka' then
begin
harga_dessert := 1500;
end
else
if ComboBox2.Text = 'Pisang' then //pilihan menu dessert
begin
harga_dessert := 1000;
end
else
begin
harga_dessert := 3000;
end;
total := harga_minum + harga_makan + harga_dessert;
if CheckBox1.Checked = true then
begin
total := total + 500; //jika di antar , ada biaya tambahan
end;
Edit1.Text := FloatToStr(total); //menghitung total pemesanan
end;
Terlihat bahwa kode tersebut terlalu panjang dan kurang sedap di pandang.Kondisi percabangan diatas , bisa kita rubah kodenya menjadi lebih pendek namun degan fungsionalitas yang sama.Ketikan kode berikut untuk mengganti kode di atas :
procedure TForm1.Button1Click(Sender: TObject);
var harga_minum , harga_makan , harga_dessert , total : real; //variable tambahan
begin
case RadioGroup1.ItemIndex of
0:harga_minum:=2000;
1:harga_minum:=3000;
2:harga_minum:=1000;
end;
case ComboBox1.ItemIndex of
0:harga_makan:=5000;
1:harga_makan:=6000;
2:harga_makan:=3000;
end;
case ComboBox2.ItemIndex of
0:harga_dessert:=1500;
1:harga_dessert:=1000;
2:harga_dessert:=3000;
end;
total := harga_minum + harga_makan + harga_dessert;
if CheckBox1.Checked = true then
begin
total := total + 500; //jika di antar , ada biaya tambahan
end;
Edit1.Text := FloatToStr(total); //menghitung total pemesanan
end;
Terlihat , bahwa kode pengganti memiliki jumlah baris yang lebih sedikit dan lebih rapih dibanding kode sebelumnya.Dalam beberapa kondisi percabangan , penggunaan case of lebih disarankan.Namun , ada juga kondisi yang lebih baik menggunakan if then else.Sekian untuk tutorial kali ini semoga bermanfat.

1 komentar:
Wah, terimakasih kawan atas tutorialnya, sangat membantu, dari tadi muter-muter nyari di Mbah Google gk ketemu. Manipulasi Case-of untuk string di Delphi pakai ComboBox. Mantab..
Posting Komentar