Contoh Bekerja Dengan Banyak Form Delphi
Pengaktifan form dapat dilakukan dengan perintah:
1. .show , perintah ini digunakan untuk mengaktifkan form, dan hasilnya from yang aktif dapat di-desible untuk kebali mengaktifkan form yang ada di belakangnya.
2. .showmodal , perintah ini untuk mengaktifkan form, dan hasilnya form yang aktif akan selalu on top.
Sedangkan untuk menutup sebuah form untuk kembali ke form pemanggil dalat dilakukan dengan perintah: .close .
Berikut adalah form-form dalam sebuah project:Komponen dan properties yang diperlukan
Form1
Component | Properties | Value |
Label1 | Caption | Contoh Operasi dengan mengunakan banyak form |
Label2 | Caption | Hasil penjumlahan |
Label3 | Caption | Hasil Pengurangan |
Label4 | Caption | Hasil Perkalian |
Label5 | Caption | Total |
Label6 | Caption Name | Hasil Operasi String LblHasil |
Button1 | Caption | Total |
Edit1 | Name | Edhjumlah |
Edit2 | Name | EdhKurang |
Edit3 | Name | EdhKali |
Edit4 | Name | Edtotal |
Form2
Component | Properties | Value |
Label1 | Caption | BilA |
Label2 | Caption | BilB |
Bitbtn1 | Kind | bkOK |
Bitbtn | Kind | bkNo |
Form3
Component | Properties | Value |
Label1 | Caption | BilA |
Label2 | Caption | BilB |
Bitbtn1 | Kind | bkOK |
Bitbtn | Kind | bkNo |
Form4
Component | Properties | Value |
Label1 | Caption | BilA |
Label2 | Caption | BilB |
Bitbtn1 | Kind | bkOK |
Bitbtn | Kind | bkNo |
Form5
Component | Properties | Value |
Radiogroup1 | Caption Items | Olahraga Lari Catur Renang |
Bitbtn1 | Kind | bkOK |
Bitbtn | Kind | bkNo |
Kode program untuk membuat aplikasi tersebut adalah:
unit Unitutama;
procedure TForm1.Exit1Click(Sender: TObject);
begin
close;
end;
procedure TForm1.Penjumlahan1Click(Sender: TObject);
var
bila,bilb : integer;
begin
form2 :=Tform2.create(self);
Form2.showmodal;
if (form2.modalresult=mrok) then
begin
with form2 do
begin
bila:=strtoint(edit1.text);
bilb:=strtoint(edit2.text);
end;
edhjml.text:=inttostr(bila+bilb);
end
else
edhjml.text:='0';
form2.free;
end;
procedure TForm1.Perkalian1Click(Sender: TObject);
var
bila,bilb : integer;
begin
form3 :=Tform3.create(self);
Form3.showmodal;
if (form3.modalresult=mrok) then
begin
with form3 do
begin
bila:=strtoint(edit1.text);
bilb:=strtoint(edit2.text);
end;
edhkali.text:=inttostr(bila*bilb);
end
else
edhkali.text:='0';
form3.free;
end;
procedure TForm1.Pengurangan1Click(Sender: TObject);
var
bila,bilb : integer;
begin
form4 :=Tform4.create(self);
Form4.showmodal;
if (form4.modalresult=mrok) then
begin
with form4 do
begin
bila:=strtoint(edit1.text);
bilb:=strtoint(edit2.text);
end;
edhkurang.text:=inttostr(bila-bilb);
end
else
edhkurang.text:='0';
form4.free;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
jml,kurang,kali : integer;
begin
jml:=strtoint(edhjml.text);
kurang:=strtoint(edhkurang.text);
kali:=strtoint(edhkali.text);
edtotal.Text := inttostr(jml+kurang+kali);
end;
procedure TForm1.OperasiString1Click(Sender: TObject);
var
str : string;
begin
form5 :=Tform5.create(self);
Form5.showmodal;
if (form5.modalresult=mrok) then
begin
with form5 do
begin
if rblari.checked=true then
str:='Baik untuk menguji nafas'
else
if rbcatur.checked=true then
str:='Baik untuk mengasah otak'
else
str:='Baik untuk menyelamatkan
diri dari banjir';
end;
lbhasil.Caption:=str;
end
else
lbhasil.Caption:='';
form5.free;
end;
end.