Minggu, 10 Juli 2011

Cara Menggunakan Case Of di Delphi 7

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.

Simak Juga Tutorial Lainnya:

1 komentar:

Unknown mengatakan...

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