VB6.0是一种简单易学的编程语言,在可视化的编程背景中,为程序员提供了巨大的便利。本经验是教你如何用API(ApplicationProgrammingInterface,应用程序编程接口)把VB中的窗口变得透明,达到窗口美化的作用。
工具/原料
VB6.0
API
方法/步骤
1、打开VB6.0,创建工程
2、进入编写代码窗口,在如图溴腻男替位置添加下面的API函数代码'窗口透明APIPrivateDeclareFunctionSetLayeredWindowAttributesLib媪青怍牙"user32"(ByValhwndAsLong,ByValcrKeyAsLong,ByValbAlphaAsByte,ByValdwFlagsAsLong)AsLongPrivateDeclareFunctionGetWindowLongLib"user32"Alias"GetWindowLongA"(ByValhwndAsLong,ByValnIndexAsLong)AsLongPrivateDeclareFunctionSetWindowLongLib"user32"Alias"SetWindowLongA"(ByValhwndAsLong,ByValnIndexAsLong,ByValdwNewLongAsLong)AsLong'窗口透明常数'ConstWS_EX_LAYERED=&H80000ConstGWL_EXSTYLE=(-20)ConstLWA_ALPHA=&H2ConstLWA_COLORKEY=&H1
3、在窗口的加载事件里添加如下代码'''''&拭貉强跳#39;''''''''稆糨孝汶;'''''''窗体透明'''''''''''''''DimrtnAsLongMe.BackColor=RGB(0,0,0)'设置一下窗口的颜色rtn=GetWindowLong(hwnd,GWL_EXSTYLE)rtn=rtnOrWS_EX_LAYEREDSetWindowLonghwnd,GWL_EXSTYLE,rtnSetLayeredWindowAttributeshwnd,RGB(0,0,0),150,LWA_ALPHA'RGB(0,0,0)参数就是要透明掉的颜色
4、OK,点击运行,窗口的透明化就实现了
5、下面介绍一下这个API函墙绅褡孛数的其它透明效果,参数的说明。ConstLWA_ALPHA=&稆糨孝汶;H2'使用此参数,透明度有效,透明颜色无效ConstLWA_COLORKEY=&H1'使用此参数,透明度无效,透明颜色有效
6、在调用函数的语句中。如果使用LWA_ALPHA参数,即SetLayeredWindowAttributeshwnd,RGB(0,0,0),150,LWA_ALPHA则窗口中的控件也会透明,透明颜色会失效
7、在调用函数的语句中。如果使用LWA_COLORKEY参数,即SetLayeredWindowAttributeshwnd,RGB(0,0,0),150,LWA_COLORKEY则窗口中的控件不会透明,透明颜色会有效