VB怎么让窗体透明,而且最前端显示?

[复制链接]
查看11 | 回复1 | 2011-4-3 06:25:23 | 显示全部楼层 |阅读模式
回复

使用道具 举报

千问 | 2011-4-3 06:25:23 | 显示全部楼层
<pre id=\"best-answer-content\" class=\"reply-text mb10\">\'不用模块这么复杂。简单化下。复制代码就可以了。
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 Declare Function SetWindowPos Lib \"user32\" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private Const WS_EX_LAYERED = defds123H80000
Private Const GWL_EXSTYLE = (-20)
Private Const LWA_ALPHA = defds123H2

Private Sub Form_Load()
Me.BackColor = defds123HFF00FF \'这里随便修改 但要和下面相同
BorderStyler = 0
rtn = GetWindowLong(hwnd, GWL_EXSTYLE)
rtn = rtn Or WS_EX_LAYERED
SetWindowLong hwnd, GWL_EXSTYLE, rtn
SetLayeredWindowAttributes hwnd, defds123HFF00FF, 100, defds123H1
SetWindowPos Me.hwnd, -1, 0, 0, 0, 0, 3
End Sub
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行