Membuat Form Dengan Efek Glass di VB6

Kali ini saya akan berbagi sebuah kode yaitu form yang mempunyai efek glass atau kaca.Dengan kode ini form akan menjadi transfaran dan menembus background di belakangnya atau tembus pandang.

Untuk contoh Form dengan efek Glass perhatikan gambar dibawah ini :

Form Efek Glass

Untuk membuat form seperti diatas berikut dibawah ini saya share kodenya :

' Deklarasi Windows API untuk mengatur transparansi form


Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _

    (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long


Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _

    (ByVal hwnd As Long, ByVal nIndex As Long) As Long

Private Declare Function SetLayeredWindowAttributes Lib "user32" _

    (ByVal hwnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long

' Konstanta untuk pengaturan transparansi

Private Const GWL_EXSTYLE = (-20)

Private Const WS_EX_LAYERED = &H80000

Private Const LWA_ALPHA = &H2


' Sub untuk mengatur tingkat transparansi form

Public Sub SetTransparansiForm(ByVal Transparansi As Byte)

    Dim lExStyle As Long

    ' Mengambil style dari form

    lExStyle = GetWindowLong(Me.hwnd, GWL_EXSTYLE)

    ' Mengatur form agar menjadi layered window

    SetWindowLong Me.hwnd, GWL_EXSTYLE, lExStyle Or WS_EX_LAYERED

    ' Mengatur tingkat transparansi

    SetLayeredWindowAttributes Me.hwnd, 0, Transparansi, LWA_ALPHA

End Sub


Private Sub Form_Load()

    ' Set transparansi form (0 - 255, dimana 0 sangat transparan, 255 tidak transparan)

    SetTransparansiForm 180  ' Sesuaikan nilai transparansi (180 adalah semi-transparan)

End Sub

Dengan kode diatas Anda sudah bisa membuat form anda menjadi tembus pandang



No comments: