易截截图软件、单文件、免安装、纯绿色、仅160KB

VB无所不能之四:制作透明和半透明窗体

VB无所不能之四:制作透明和半透明窗体
 
——作者:钟声 
 
我们经常可以看到这样的窗体,觉得很炫,如图所示:
 
 
        同样,对Windows系统方面的编程似乎首先想到的绝对不是VB,而大部分程序员想到的一定是VC。
         其实,VB对于这个实现非常方便且简单,用到了“user32”中的SetLayeredWindowAttributes()函数。
 
SetLayeredWindowAttributes()函数介绍:
函数声明:
Declare Function SetLayeredWindowAttributes Lib "user32" () 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是透明方式,可以取两个值:当取值为LWA_ALPHA时,crKey参数无效,bAlpha参数有效;
当取值为LWA_COLORKEY时,bAlpha参数有效而窗体中的所有颜色为crKey的地方将变为透明。
 
下面我们做两个实验:
 
第一个:做一个半透明窗体
 
步骤一:打开VB建立一个窗体Form
 
步骤二:将窗体背景颜色设为:&HFF0000
 
步骤三:将下面代码粘贴到程序中:
 
Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" () Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" () Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Declare Function SetLayeredWindowAttributes Lib "user32" () 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
Const GWL_EXSTYLE = () Const GWL_EXSTYLE = (-20)
Private Const LWA_ALPHA = &H2
Private Const LWA_COLORKEY = &H1
Sub Form_Load() Sub Form_Load()
 &nb


相关文档:

VB控件和对象:App 对象

App 对象是VB应用程序的全局信息,如应用程序的标题、版本信息、可执行文件和帮助文件的路径及名称以及是否运行前一个应用程序的示例。
属性
    ------- 其他属性-----------------
    EXEName 属性      返回当前正运行的可执行文件 ......

vb标准(四):错误处理

·错误类型
    ·编程员的错误(比如分母不能是0,参数个数或数据类型不对应)
    ·环境方面的错误(比如文件太大,磁盘放不下)
    ·时间上的错误(比如视图给尚未完成加载的窗体设置焦点)
·创建错误处理程序
    ......

vb标准(六):命名约定


·匈牙利标记法
   ·使用3字符前缀来表示数据类型和控件类型
   ·3个字符可以实现充分多变性,并使前缀合乎逻辑和直观
·表示变量的作用域
   ·可以并且应该使用前缀来表示变量的作用域 ......

VB 曹师兄面试 纪律与学习

关于曹师兄找工作:
在找工作过程中:
1、 观察力。面试时看见中南融通的横幅“最小化你和客户的距离,最大化你和客户的利益”,顺而和面试官讨论他们公司的文化和理念,会对你应聘有很大帮助。找工作时的笔试基础都差不多,重要的是和老总的面试,公司更注重的是你是如何做人的和你对业务的理解。所以,在以后 ......

VB无所不能之五:建立“标准”DLL动态链接库文件(1)

VB无所不能之五:建立“标准”DLL动态链接库文件(1)
作者:钟声
博客地址:http://blog.csdn.net/useway
 
        动态链接库经常被认为是VC或者Dephi的专利,DLL文件可以将你编写的函数动态的发布,并可以被其他程序很方便的调用。
    &n ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号