VB如何播放透明的FLASH?播放的时候把窗体多余的部分去掉,和把FLASH的背景也去掉,应该如何实现?
解决方案 »
- CloseServiceHandle关闭的是什么?
- 在VB 中应该怎么引用Crystal ActiveX控件
- 关于制作VB ACCESS数据库 远程数据更新疑问
- 有谁用过vsPrinter打印控件吗??? 急!急!急!
- 求WebBrowser1.ExecWB参数详解?(有加分哦)
- 1.已经知道myConn as ADODB.connection,已经连好数据库了.
- 学VB有一年多了, 现在想学ASP, 各位:是学ASP还是ASP.net好呢, 谢谢!!
- 急救!!!!急救!!!!急救!!!!急救!!!!
- picturebox画图问题?
- 大于&H80000000的整数怎么存放?
- vb6 动态菜单的响应
- 求助:寻找数据中的拐点行
把Flash的背景去掉?你说的可是vb form产生的背景?如果是你可以把form做成透明的,
如果是Flash本身的背景,那应该是去不掉的
Const WS_EX_LAYERED = &H80000
Const GWL_EXSTYLE = (-20)
Const LWA_ALPHA = &H2
Const LWA_COLORKEY = &H1
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 LongPrivate Sub Form_Load()
Dim rtn As Long
rtn = GetWindowLong(Me.hwnd, GWL_EXSTYLE)
rtn = rtn Or WS_EX_LAYERED
SetWindowLong Me.hwnd, GWL_EXSTYLE, rtn
SetLayeredWindowAttributes Me.hwnd, 10, 10, LWA_ALPHA '第3个参数设置透明度0-255之间
End Sub
Option ExplicitPrivate 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 WS_EX_LAYERED = &H80000
Private Const GWL_EXSTYLE = (-20)
Private Const LWA_ALPHA = &H2
Private Const LWA_COLORKEY = &H1Private 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 HWND_TOPMOST = -1
Private Const SWP_NOMOVE = &H2
Private Const SWP_NOSIZE = &H1Private Sub Form_Load()
Me.BackColor = RGB(88, 88, 88)
SetWindowPos Me.hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE
Dim rtn As Long
Me.BorderStyle = 0
rtn = GetWindowLong(hWnd, GWL_EXSTYLE)
rtn = rtn Or WS_EX_LAYERED
SetWindowLong hWnd, GWL_EXSTYLE, rtn
SetLayeredWindowAttributes hWnd, RGB(88, 88, 88), 0, LWA_COLORKEY
End Sub
两种方法看看哪种适合你
http://qiannao.com/file/gqoo/a38d9a4f/
测试文件:
http://qiannao.com/file/gqoo/03d90705/
http://qiannao.com/file/gqoo/b264edde/