8. Klik dua kali pada Button1 di Form1 sehingga akan muncul Source Editor yang bernama Unit1 (nama unit dari Form1). Karena kali ini kita akan memanggil Form2 agar tampil, maka kita perlu memanggil unit milik Form2 yang bernama Unit2 dibawah implementation dari Unit1.
implementation uses Unit2;

Dan panggil Form2 sebagai ShowModal. Dengan ShowModal komponen Form1 tidak dapat diakses sampai Form2 ditutup.
procedure TForm1.Button1Click(Sender: TObject); begin Form2.ShowModal; end;

Kode selengkapnya untuk Unit1 adalah :
unit Unit1; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls; type { TForm1 } TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { private declarations } public { public declarations } end; var Form1: TForm1; implementation uses Unit2; { TForm1 } procedure TForm1.Button1Click(Sender: TObject); begin Form2.ShowModal; end; initialization {$I unit1.lrs} end.
Darimana kita tahu nama unit milik Form2 adalah Unit2 ? Lihat gambar dibawah ini.

9. Setelah itu coba jalankan aplikasi sederhana yang kita buat ini dengan menekan tombol F9 atau klik menu Run > Run.

Sehingga akan muncul aplikasi yang telah kita tersebut. Sekarang klik Button1 yang berada di Form1 untuk memanggil Form2, sehingga akan tampil seperti dibawah ini. Form2 tidak tampil ditengah-tengah Form1.

Coba klik Form1, Anda dipastikan tidak dapat mengaksesnya, termasuk tombol Button1 karena Form2 ditampilkan sebagai ShowModal. Klik close atau tanda silang diujung kanan atas Form2, kemudian coba pindahkah Form1 ke sisi lain layar monitor dan ulangi mengklik Button1 untuk memanggil Form2. Apa yang terjadi ? Form 2 seperti tertinggal dari induknya, Form1.
Discussion
No comments for “Lazarus : Menampilkan ShowModal Form Ditengah Form Utama”
Post a comment