Anda di halaman 1dari 5

MODUL 7 RODIOGROUP DAN COMBOBOX Berikut ini adalah contoh membuat sebuah program yang menggunakan pilihan radiogruop

dan pilihan combobox sekaligus.


1. Buatlah projek baru, tempatkan komponen seperti di bawah ini :

2. Aturlah properti form dan komponen sebagai berikut :


KOMPONEN Form1 Label1 Label2 Label3 Label4 Label5 Label6 Label7 Label8 Label9 Label10 Label11 Edit1 Edit2 PROPERTI Caption Name Caption Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Text Name Text SETTING FORM PEMBELIAN frmPembelian DAFTAR PEMBELIAN BARANG PT SINAR DUNIA HITAM lblNamaPembeli NAMA PEMBELI lblAlamat ALAMAT lblJumlahBeli JUMLAH BELI lblNamaBarang NAMA BARANG lblHarga HARGA lblJenisPembeli JENIS PEMBELI lblJumlahDiskon JUMLAH DISKON lblNilaiDiskon NILAI DISKON lblBayar BAYAR edNamaPembeli ( kosongkan ) edAlamat ( kosongkan ) KOMPONEN Edit5 Edit6 PROPERTI Name Text Name Text Edit7 Edit8 RadioGroup1 Name Text Name Text Name Caption ItemIndex Items SETTING edHarga ( kosongkan ) edJumlahDiskon ( kosongkan ) edNilaiDiskon ( kosongkan ) edBayar ( kosongkan ) rgBarang KODE BARANG -1 A B C D cmbJenisPembeli -1 Distributor Toko Pemakai ( kosongkan ) btHitung &Hitung BtKeluar &Keluar

ComboBox1

Name ItemIndex Items

Button1 Button2

Text Name Caption Name Caption

Edit3 Edit4

Name Text Name Text

edJumlahBeli ( kosongkan ) edNamaBarang ( kosongkan )

3. Setelah selesai melakukan setting properties, maka tampilan form akan seperti berikut ini :

4. Pada variabel global, berikan variabel variabel yang akan digunakan pada beberapa procedure :
var frmPembelian: TfrmPembelian; { otomatis muncul } JumlahBeli, Harga, NilaiDiskon: Real; { harus dideklarasikan sendiri }

5. Double klik pada RadioGroup rgBarang, kemudian tambahkan listing program, sehingga menjadi sebagai berikut :
procedure TfrmPembelian.rgBarangClick(Sender: TObject); var NamaBarang : String; begin case Rgbarang.Itemindex Of 0 : begin NamaBarang := 'Buku'; Harga := 2000; end; 1 : begin NamaBarang := 'Pensil'; Harga := 1000; end; 2 : begin NamaBarang := 'Garisan'; Harga := 3000; end; 3 : begin NamaBarang := 'Ballpoint'; Harga := 4000; end; end;

edNamaBarang.Text := NamaBarang; edHarga.Text := Floattostr(Harga); end;

6. Double klik pada ComboBox cmbJenisPembeli, kemudian tambahkan listing program, sehingga menjadi sebagai berikut :
procedure TfrmPembelian.cmbJenisPembeliChange(Sender: TObject); var JumlahDiskon : string; begin JumlahBeli:= StrToInt(edJumlahBeli.Text); case cmbJenisPembeli.ItemIndex of 0 : begin JumlahDiskon := '20%'; NilaiDiskon := 0.2 * Harga * JumlahBeli; end; 1 : begin JumlahDiskon := '10%'; NilaiDiskon := 0.1 * Harga * JumlahBeli; end; 2 : begin JumlahDiskon := '5%'; NilaiDiskon := 0.05 * Harga * JumlahBeli; end; end; edJumlahDiskon.Text := JumlahDiskon; edNilaiDiskon.Text := FloatToStr(NilaiDiskon); end;

7. Double klik pada button btHitung, kemudian tambahkan listing program, sehingga menjadi sebagai berikut :
procedure TfrmPembelian.btHitungClick(Sender: TObject); var Bayar : Real; begin JumlahBeli:= StrToInt(edJumlahBeli.Text); Bayar :=(JumlahBeli*Harga)- NilaiDiskon; edBayar.Text := FloatToStr(Bayar); end;

8. Double klik pada button btKeluar, kemudian tambahkan listing program, sehingga menjadi sebagai berikut :
procedure TfrmPembelian.btKeluarClick(Sender: TObject); begin Application.Terminate; end;

9. Jika ada kesalahan, coba cocokkan dengan listing program lengkap di bawah ini.
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TfrmPembelian = class(TForm) RGBARANG: TRadioGroup; lblJumlahBeli: TLabel; edJumlahBeli: TEdit;

lblNamaBarang: TLabel; lblHarga: TLabel; edNamaBarang: TEdit; btKeluar: TButton; lblBayar: TLabel; EDBAYAR: TEdit; btHitung: TButton; lblAlamat: TLabel; lblNamaPembeli: TLabel; edNamaPembeli: TEdit; edAlamat: TEdit; Label4: TLabel; cmbJenisPembeli: TComboBox; lblJenisPembeli: TLabel; edHarga: TEdit; lblJumlahDiskon: TLabel; edJumlahDiskon: TEdit; lblNilaiDiskon: TLabel; edNilaiDiskon: TEdit; Label2: TLabel; procedure RGBARANGClick(Sender: TObject); procedure btKeluarClick(Sender: TObject); procedure btHitungClick(Sender: TObject); procedure cmbJenisPembeliChange(Sender: TObject); private { Private declarations } public { Public declarations } end; var frmPembelian: TfrmPembelian; JumlahBeli, Harga, NilaiDiskon: Real; implementation {$R *.dfm} procedure TfrmPembelian.RGBARANGClick(Sender: TObject); var NamaBarang : string; begin case rgBarang.ItemIndex Of 0 : begin NamaBarang := 'Buku'; Harga := 2000; end; 1 : begin NamaBarang := 'Pensil'; Harga := 1000; end; 2 : begin NamaBarang := 'Garisan'; Harga := 3000; end; 3 : begin NamaBarang := 'Ballpoint'; Harga := 4000; end; end; edNamaBarang.Text := NamaBarang; edHarga.Text := FloatToStr(Harga); end; procedure TfrmPembelian.cmbJenisPembeliChange(Sender: TObject); var JumlahDiskon : string; begin JumlahBeli:= StrToInt(edJumlahBeli.Text); case cmbJenisPembeli.ItemIndex OF 0 : begin JumlahDiskon := '20%'; NilaiDiskon := 0.2 * Harga * JumlahBeli; end; 1 : begin

JumlahDiskon := '10%'; NilaiDiskon := 0.1 * Harga * JumlahBeli; end; 2 : begin JumlahDiskon := '5%'; NilaiDiskon := 0.05 * Harga * JumlahBeli; end; end; edJumlahDiskon.Text := JumlahDiskon; edNilaiDiskon.Text := FloatToStr(NilaiDiskon); end; procedure TfrmPembelian.btHitungClick(Sender: TObject); var Bayar : Real; begin JumlahBeli:= StrToInt(edJumlahBeli.Text); Bayar :=(JumlahBeli*Harga)- NilaiDiskon; edBayar.Text := FloatToStr(Bayar); end; procedure TfrmPembelian.btKeluarClick(Sender: TObject); begin Application.Terminate; end; end.