亚洲一区亚洲二区亚洲三区,国产成人高清在线,久久久精品成人免费看,999久久久免费精品国产牛牛,青草视频在线观看完整版,狠狠夜色午夜久久综合热91,日韩精品视频在线免费观看

用VisualBasic制作半透明窗體VB -電腦資料

電腦資料 時間:2019-01-01 我要投稿
【www.ishadingyu.com - 電腦資料】

    用VisualBasic制作半透明窗體 函數(shù)SetLayeredWindowAttributes 使用這個函數(shù),可以輕松的實現(xiàn)半透明窗體,

用VisualBasic制作半透明窗體VB

。按照微軟的要求,透明窗體窗體在創(chuàng)建時應(yīng)使用WS_EX_LAYERED參數(shù)(用CreateWindowEx),或者在創(chuàng)建后設(shè)置該參數(shù)(用SetWindowLong),我選用后者。全部

   

   

    用VisualBasic制作半透明窗體

    函數(shù)SetLayeredWindowAttributes

    使用這個函數(shù),可以輕松的實現(xiàn)半透明窗體。按照微軟的要求,透明窗體窗體在創(chuàng)建時應(yīng)使用WS_EX_LAYERED參數(shù)(用CreateWindowEx),或者在創(chuàng)建后設(shè)置該參數(shù)(用SetWindowLong),我選用后者。全部函數(shù)、常量聲明如下:

    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

    其中hwnd是透明窗體的句柄,crKey為顏色值,bAlpha是透明度,取值范圍是[0,255],dwFlags是透明方式,可以取兩個值:當(dāng)取值為LWA_ALPHA時,crKey參數(shù)無效,bAlpha參數(shù)有效;當(dāng)取值為LWA_COLORKEY時,bAlpha參數(shù)有效而窗體中的所有顏色為crKey的地方將變?yōu)橥该鳎@個功能很有用:我們不必再為建立不規(guī)則形狀的窗體而調(diào)用一大堆區(qū)域分析、創(chuàng)建、合并函數(shù)了,只需指定透明處的顏色值即可,哈哈哈哈!請看具體代碼,

電腦資料

用VisualBasic制作半透明窗體VB》(http://www.ishadingyu.com)。

    Private Const WS_EX_LAYERED = &H80000

    Private Const GWL_EXSTYLE. = (-20)

    Private Const LWA_ALPHA = &H2

    Private Const LWA_COLORKEY = &H1

    代碼一:一個半透明窗體

    Private Sub Form_Load()

    Dim rtn As Long

    rtn = GetWindowLong(hwnd, GWL_EXSTYLE)

    rtn = rtn Or WS_EX_LAYERED

    SetWindowLong hwnd, GWL_EXSTYLE, rtn

    SetLayeredWindowAttributes hwnd, 0, 200, LWA_ALPHA

    End Sub

    代碼二:形狀不規(guī)則的窗體

    Private Sub Form_Load()

    Dim rtn As Long

    BorderStyler=0

    rtn = GetWindowLong(hwnd, GWL_EXSTYLE)

    rtn = rtn Or WS_EX_LAYERED

    SetWindowLong hwnd, GWL_EXSTYLE, rtn

    SetLayeredWindowAttributes hwnd, &HFF0000, 0, LWA_COLORKEY ’將扣去窗口中的藍(lán)色

    End Sub

    原文轉(zhuǎn)自:http://www.ltesting.net

最新文章