Form MDI? Form Induk dan form anak? Apa fungsinya? lihat gambar 1
Form MDI (Multiple Document Interface) Form utama yang menjadi induk semua form yang di dalamnya akan kita letakkan formMDIchild (Jendela Anak), bagaimana cara buatnya?. Lihat Gambar 2.
Cukup mudah form1 ubah FormStylenya menjadi fsMDIForm dan Form2 Ubah menjadi fsMDIChild.
Tapi terdapat beberapa perubahan atau pengaturan yang harus lakukan setelah anda menerapkan MDI Form untuk memperbaiki masalah masalah berikut:
1. Pada saat MDI Child Maximize, tidak ada tombol minimize, restore dan close untuk MDI child.
Cukum dengan tambahkan komponen mainmenu pada Form1 atau form utama, dan tombol-tombolnya pun akan tampil.
Terlihat pada menu yang dibuat terdapat menu MDI CHILD – FORM 2, menu tersebut akan digunakan untuk menampilkan MDIChild(Form2), untuk melengkapinya isi script ini untuk memanggil form2
procedure TForm1.mniMDICHILDFORM21Click(Sender: TObject); begin form2.show; end;
dan kalian telah memiliki menu dan tombol.
Form childnya belum dipanggi tapi sudah tampil duluan?.
2. MDIChild tampil bersamaan dengan form utama
apa bila kita akan mendisablekan MDIChild akan muncul pesan error bahwa MDIChild tidak boleh disable
perhatikan scrip ini Application.CreateForm(TForm2, Form2);
yang ada pada list project1. Cara menampilkannya dengan menekan kombinasi ctrl+12
dialog unit list project tampil pilih/klik 2 kali project1.
pindahkan scrip tersebut Application.CreateForm(TForm2, Form2)
ke menu yang sebelumnya kita buat sehingga scripnya menjadi seperi berikut
procedure TForm1.mniMDICHILDFORM21Click(Sender: TObject); begin Application.CreateForm(TForm2, Form2); form2.show; end;
Dan lihat perubahannya kalian sudah bisa memanggilnya. Apakah sudah selesai?, Tentu tidak . Ternyata tombol close pada MDI Child tidak bekerja.
2. MDIChild Tidak bisa di tutup
Saat beralih ke form 2 on close. Lihat object inspector form2 klik 2 kali event onClose dan isi cripnya dengan Action:=caFree;
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caFree; end;
download contoh
cara download
dan selamat berkreasi.