u2nn吧 关注:27贴子:1,515
  • 0回复贴,共1

setWindowColorMask

只看楼主收藏回复

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
Private Declare Function SetLayeredWindowAttributes Lib "user32" (ByVal hWnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long
Private Const GWL_EXSTYLE = (-20)
Private Const LWA_COLORKEY = &H1
Private Const WS_EX_Layered = &H80000
Function setWindowColorMask(ByVal hWnd As Long, ByVal color As Long) As Boolean
Dim exstyle As Long
exstyle = GetWindowLong(hWnd, GWL_EXSTYLE)
exstyle = exstyle Or WS_EX_Layered
SetWindowLong hWnd, GWL_EXSTYLE, exstyle
SetLayeredWindowAttributes hWnd, &HFF0000, 0, LWA_COLORKEY
setWndColorMask = True
End Function


IP属地:上海1楼2013-05-02 07:20回复