| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 670 人关注过本帖
标题:alpha blending vb
只看楼主 加入收藏
t56758408
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2007-1-4
收藏
 问题点数:0 回复次数:0 
alpha blending vb
问问各位大虾 怎么实现VB半透明窗体 或者皮肤的 下面是我收集的代码

程序代码:
Public   Declare   Function   SetLayeredWindowAttributes   Lib   "user32"   (ByVal   hwnd   As   Long,   ByVal   crKey   As   Long,   ByVal   bAlpha   As   Byte,   ByVal   dwFlags   As   Long)   As   Long   
    
    '具体可以使用的常量及其用法   
    
    Const   LWA_ALPHA=&H2           '表示把窗体设置成半透明样式   
    Const   LWA_COLORKEY=&H1           '表示不显示窗体中的透明色     
      
            
    具体例子   
    
    程序代码   
    
    Module1   
    
  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   Const   WS_EX_LAYERED   =   &H80000   
  Public   Const   GWL_EXSTYLE   =   (-20)   
  Public   Const   LWA_ALPHA   =   &H2   
  Public   Const   LWA_COLORKEY   =   &H1   
  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   
    
    
    Form1     
    
  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,   0,   192,   LWA_ALPHA   
    
      '把窗体设置成半透明样式,第二个参数表示透明程度   
      '取值范围0--255,为0时就是一个全透明的窗体了   
    
    End   Sub   
    
    
    '第二种使用方法     
    
    SetLayeredWindowAttributes   Me.hWnd,   &H0,   0,   LWA_COLORKEY   
      '表明不显示窗体中的透明色   
      '而第二个参数表示透明色为黑色,并且你可以用RGB函数来指定颜色值

哪为能研究下 给个具体的程序研究研究  VB皮肤
搜索更多相关主题的帖子: blending alpha 
2008-10-29 01:45
快速回复:alpha blending vb
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024948 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved