Anda di halaman 1dari 2

Melakukan Close Form pada Saat Event OnCreate

atau OnShow pada Borland Delp | Prajurit Teknologi


https://prajuritteknologi.wordpress.com/2010/03/11/melakukan-close-form-pada-saat-event-
oncreate-atau-onshow-pada-borland-delp/

 
 
 
 
 
 
i
 
Rate This

Pada kasus ini dia ceritanya sedang membuat suatu sistem sekuriti hak
akses pada aplikasi dimana kita bisa memberi hak akses terhadap orang
lain apakah bisa membuka form tersebut atau tidak. Demikianlah tips
sederhana mengenai proses close form pada event OnShow atau OnCreate
pada Borland Delphi. Semoga bermanfaat.

Setelah berburu di internet akhirnya ketemu juga solusinya. Ternyata


sangat mudah sekali caranya. Pada Windows terdapat Windows message
yaitu WM_CLOSE yang digunakan untuk menutup suatu window. Windows
message WM_CLOSE ini kemudian kita kirimkan dengan prosedur
PostMessage. Kenapa menggunakan PostMessage? Kenapa bukan
SendMessage? Ini disebabkan karena PostMessage sifatnya adalah
mengirimkan Windows message ke dalam message queue. Berbeda dengan
SendMessage yang mengirimkan Windows message dan sifatnya menunggu
sampai ada respon balik. Untuk lebih jelasnya akan dijelaskan dalam contoh
berikut ini.

Dalam contoh ini penulis menggunakan Borland Delphi 6.0. Buatlah sebuah
project baru. Secara otomatis akan tercipta Form1. Letakkan sebuah
komponen Button pada Form1 dan kemudian buatlah form baru (melalui
menu File | New | Form). Kemudian pilih menu Project | Options.
Kemudian akan muncul Project Options dialog box, pilihtab Forms dan
arahkan Form2 ke bagian ‘Available forms’ (ini akan membuat Form2 tidak
di-create secara otomatis). Kemudian tekan tombol OK. Sekarang Anda
harus mengetikkan code berikut pada bagian event OnClick pada tombol
Button1 tersebut.

procedure TForm1.Button1Click(Sender: TObject);


begin
Form2 := TForm2.Create(self);
Form2.ShowModal;
Form2.Free;
end;

Setelah itu ketik code seperti berikut ini pada event OnCreate atau OnShow
pada Form2. Pada contoh di bawah code diletakkan pada event OnShow.

procedure TForm2.FormShow(Sender: TObject);


begin
PostMessage(self.handle, WM_CLOSE, 0, 0);
Screen.Cursor := crDefault;
end;

Kalau kita lihat pada code di atas maka hanya terdapat dua baris code,
sangat sederhana sekali bukan. Yang pertama adalah perintah PostMessage
dengan mengirimkan Windows message WM_CLOSE. Pada baris kedua ada
perintah untuk mengembalikan cursor kepada keadaan semula. Silakan
Anda jalankan program di atas dan tekanlah tombol yang ada pada Form1,
akan nampak bahwa Form2 tidak akan sampai dimunculkan karena sudah
ditutup dengan pengiriman Windows message WM_CLOSE pada Form2
dengan perintah PostMessage.
Demikianlah tips sederhana mengenai proses close form pada event
OnShow atau OnCreate pada Borland Delphi. Semoga bermanfaat.

Anda mungkin juga menyukai