
Bismillahirahmanirahim
Sering kita menjumpai tanda tanya di bagian kanan atas pada form aplikasi yang kita buka.
Dulu, tombol ini adalah tombol yang digunakan untuk membantu pengguna aplikasi mengetahui suatu fungsi dari sebuah objek dalam aplikasi tersebut, dengan mengklik tombol "?" lalu mengklik objek yang dimaksud, lalu akan muncul Hint yang berisi keterangan tentang objek tersebut.
Seiring berjalannya waktu, sedikit demi sedikit programmer sudah meninggalkan cara ini untuk menampilkan bantuan.
Nah, sekarang akan kita bahas, bagaimana caranya menggunakan tombol ini lagi, tapi untuk keperluan yang berbeda, bukan untuk yang seperti saya deskripsikan diatas, kita akan "mendaur ulang" tombol ini sebagai tombol "About" untuk program yang telah kita buat.
Okay, Kita mulai !
1. Persiapkan aplikasi Delphi, disini saya menggunakan Borland Delphi 7
2. Di FORM1, Ubah nilai menjadi TRUE pada BorderIcons untuk biSystemMenu dan biHelp, yang lain ubah ke FALSE
3. Setelah selesai, sekarang kita beralih ke Code Editor, isikan kode berikut dibawah "private"
procedure klik_tekan(var Msg: TWMNCLButtonDown); message WM_NCLBUTTONDOWN; procedure klik_lepas(var Msg: TWMNCLButtonUp); message WM_NCLBUTTONUP;
Fungsi dua prosedur diatas adalah :
A . klik_tekan : untuk menangkap kejadian pada saat tombol mouse di tekan dan kursor berada di atas tombol "?" tersebut.
B . klik_lepas : untuk menangkap kejadian pada saat tombol mouse di lepaskan, di prosedur ini, nantinya yang akan kita gunakan untuk menampilkan pesan / kotak dialog "About" program.
4. Setelah selesai, di bagian blok-kode kita ketikkan prosedur untuk klik_tekan
procedure TForm1.klik_tekan(var Msg: TWMNCLButtonDown); begin if Msg.HitTest = HTHELP then begin Msg.Result := 0; end else inherited; end;
Perhatikan kode "Msg.Result := 0;" .
Kode tersebut adalah kode perintah untuk program supaya bisa menerima event mouseDown yang dilakukan ketika kita menekan tombol mouse dengan kursor berada diatas biHelp.
5. Selanjutnya, dibawah kode tersebut, kita ketikkan prosedur untuk klik_lepas
procedure TForm1.klik_lepas(var Msg: TWMNCLButtonUp); begin if Msg.HitTest = HTHELP then begin Msg.Result := 0; showmessage('© 2015 Arachmadi Putra Pambudi'); //disini kode kotak dialog kita ketikkanend else inherited; end;
6. Terakhir, kita coba RUN programnya
SELAMAT MENCOBA !