窗口透明的问题?

chenkangli 2003-08-15 10:29:59
我在FORM的PICTURE中加载了一张图片,如何使得只显示图片,不显示窗口。
...全文
28 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
射天狼 2003-08-15
  • 打赏
  • 举报
回复
'在模块中
Option Explicit

Public Const WS_OVERLAPPED = &H0&
Public Const WS_EX_LAYERED = &H80000
Public Const GWL_EXSTYLE = (-20)
Public Const LWA_ALPHA = &H2
Public Const LWA_COLORKEY = &H1

Public Declare Function SetLayeredWindowAttributes Lib "user32" (ByVal hwnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long
Public Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long


'在窗口中
Private Sub Form_Load()
Dim rtn As Long

rtn = GetWindowLong(Me.hwnd, GWL_EXSTYLE) '取的窗口原先的样式
rtn = rtn Or WS_EX_LAYERED '使窗体添加上新的样式WS_EX_LAYERED
SetWindowLong Me.hwnd, GWL_EXSTYLE, rtn '把新的样式赋给窗体
SetLayeredWindowAttributes Me.hwnd, 255, 200, LWA_ALPHA
'把窗体设置成半透明样式,第二个参数表示透明程度
'取值范围0--255,为0时就是一个全透明的窗体了
End Sub
yunok 2003-08-15
  • 打赏
  • 举报
回复
我的代码:

Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
Private Declare Function CreateCompatibleBitmap Lib "gdi32" (ByVal hdc As Long, ByVal nWidth As Long, ByVal nHeight As Long) As Long
Private hBitmap As Long

Private Sub Command1_Click()
Unload Me
End Sub

Private Sub Form_Load()
'事先设form的BorderStyle = 0 没有框线
Me.AutoRedraw = True
Image1.Picture = LoadPicture(App.Path & "\bubbles.gif")

'自行找一个背景透明的图
hBitmap = CreateCompatibleBitmap(Me.hdc, 0, 0)
SelectObject Me.hdc, hBitmap
Me.Refresh
End Sub

Private Sub Form_Unload(Cancel As Integer)
DeleteObject hBitmap
End Sub

绝对的透明~。呵呵
chenkangli 2003-08-15
  • 打赏
  • 举报
回复
并且要使得窗口透明!
飘零风 2003-08-15
  • 打赏
  • 举报
回复
这个属性只能在设计时设置。运行时改不了。
飘零风 2003-08-15
  • 打赏
  • 举报
回复
Form1.BorderStyle=0

7,789

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧