注释:form上有Command1, command2两个Button并事先设定form之BorderStyle = 0
Option Explicit Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long Const GWL_EXSTYLE = (-20) Const WS_EX_TRANSPARENT = &H20& Private PreValue As Long
Private Sub Command2_Click() 注释:还原变成不透明 Call SetWindowLong(Me.hwnd, GWL_EXSTYLE, PreValue) Me.Hide Me.Show End Sub
Private Sub Form_Load() Dim i As Long
i = GetWindowLong(Me.hwnd, GWL_EXSTYLE) 注释:变成透明的Form PreValue = SetWindowLong(Me.hwnd, GWL_EXSTYLE, i Or WS_EX_TRANSPARENT) Me.Show DoEvents Command1.Refresh 注释:令Command1可见 Command2.Refresh 注释:令Command2可见 End Sub  
|