Minggu, 27 November 2011

Membuat CommandButton Seperti Stop Kontak Lampu

Deskripsi: Membuat sebuah tombol kelihatan ditekan ke dalam saat ditekan
sama seperti jika Anda menekan tombol stop-kontak lampu di rumah;
maka tombol akan kelihatan masuk ke dalam, kemudian ketika Anda
menekan sekali lagi, maka tombol akan kembali normal kembali...
demikian seterusnya secara bergantian untuk penekanan berikutnya.

Persiapan: 1. Buat 1 Project baru dengan 1 Form, 1 Module, dan 1 Commandbutton.
2. Copy-kan coding berikut ke dalam editor form & module tsb.

'--- Copy Code berikut di kolom Modul ---'

Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
(ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As _
Long, lParam As Any) As Long
Public Const BM_SETSTATE = &HF3
Public Const WM_LBUTTONDOWN = &H201
Public Const WM_LBUTTONUP = &H202

'--- Copy'a Sampai Disini...


'--- Copy Code berikut di Form , Deskripsi'a General ---'

Dim blnTekan As Boolean

Private Sub Command1_Click()
If blnTekan = False Then
Call SendMessage(Command1.hwnd, BM_SETSTATE, 1, ByVal 0&)
blnTekan = True
Exit Sub
ElseIf blnTekan = True Then
blnTekan = False
Call SendMessage(Command1.hwnd, BM_SETSTATE, 0, ByVal 0&)
End If
End Sub

'--- Copy'a Sampai sini ...


Keterangan :
'Ketika Anda mengklik Command1 pertama kali, maka tombol kelihatan masuk ke dalam.
'Ketika Anda mengklik Command1 selanjutnya, tombol akan kelihatan normal kembali.
'Demikian seterusnya bergantian... :-)
'Pengertian "klik" di atas tidak hanya event Click saja, tapi bisa dengan
'menekan Enter atau tombol Spasi di keyboard saat tombol dalam keadaan focus.

0 komentar:

Posting Komentar