说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

用VisualBasic制作半透明窗体

HTML文档下载 WORD文档下载 PDF文档下载
用VisualBasic制作半透明窗体

作者:iProgram



函数SetLayeredWindowAttributes

  使用这个函数,可以轻松的实现半透明窗体。按照微软的要求,透明窗体窗体在创建时应使用WS_EX_LAYERED参数(用CreateWindowEx),或者在创建后设置该参数(用SetWindowLong),我选用后者。全部函数、常量声明如下:

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是透明方式,可以取两个值:当取值为LWA_ALPHA时,crKey参数无效,bAlpha参数有效;当取值为LWA_COLORKEY时,bAlpha参数有效而窗体中的所有颜色为crKey的地方将变为透明--这个功能很有用:我们不必再为建立不规则形状的窗体而调用一大堆区域分析、创建、合并函数了,只需指定透明处的颜色值即可,哈哈哈哈!请看具体代码。

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


代码二:形状不规则的窗体

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 ’将扣去窗口中的蓝色

End Sub
巧用“关于”对话框-VB资料 请问在VB中如何关闭别的应用程序窗口 确定屏幕分辨率-VB资料 让VB5支持动画光标 让窗口拒绝接受键盘和鼠标事件 -VB资料 让窗体处于最前面 -VB资料 让窗体居中 -VB资料 让所有的控件都动起来 -VB资料 让最大化和最小化按钮消失-VB资料 任意多边形的窗口-VB资料 如 何将「拒 绝 被 盖 住 的 窗 口 」还 原-VB资料 VB如何创建椭圆形的窗体? VB如何创建无Icon的窗体? VB如何防止Edit框中的Password不被非法获取 VB如何将鼠标显示成动画鼠标? VB如何利用程序拉下 ComboBox? VB如何让窗体右上角的X失效? VB如何使Form的背景图随Form大小改变 VB如何使Text文本框的属性只读? VB如何使窗体右上角的"X"无效? VB如何使窗体最小化并消失 VB如何在VB和Delphi中快速实现立体化窗口显示 VB如何在VB中实现绘图区的大十字光标 VB如何在VB中制作不回显的文本框 VB如何制作浮动式窗口 闪烁的Label-VB资料 设定StatusBar的文字成不同的颜色-VB资料 设计一个可中断循环的按钮-VB资料 设置“执行无用户界面”-VB资料 生成一个透明窗体 -VB资料 实现窗体内部的左右移动 -VB资料 20分求助有关SQL数据库的问题(为什么select...into语句无法执行) 哪有里Crystal Reports可以下载(无内容)? Where the 广东外贸外语学院 关于ODBC客户机端配置的问题 谁能给我一个delphi连接access数据库的实例,小弟万分感谢!!!!!!!!!!!!! 我机器里,98,2000装在C盘,XP装在D盘,现在我想只留下XP,不知道该怎么处理???????????????????????????? 如何实现5M以上的文件的上传 从windows进入unix Oracle 中文输入 是否onkeypress和onkeydown不能同时使用呀? Delphi 5下要做一个多 Y 轴的曲线图形,如何实现? 哪有xteamlindows下载?? 万分感谢!!!!! borland 会不会出一个 C# Builder? 乱码,头大了,不知道为什么pb导入excel怎么办 数据统计问题,请大侠门帮忙!急急急!!! 求解ZModem通讯协议源程序----有谁用过CZModemCore 我也不知道对不对! 最高级的问题?搞一个专业的VC程序员基地~~~~~~ 在研究directshow filter的push模式的兄弟请进 800分+工资管理原代码,如何解决ActiveReports打印图片的一个很难题;否则我快下岗了 有两个问题,每题40分,马上给分!!!! 如何使用打印机? 在爱情方面谁能做到这一点? 谁有 file cutter v1.4的注册码? 有急用! 搞一个专业的VC程序员基地~~~~~~谁愿意加入????? 最新发现:原来C++Bilder的项目文件(.bpr)是XML格式的! 关于FAT32和NTSF的问题 如何用VC实现Email的发送? 800分+工资管理原代码,如何解决ActiveReports打印图片的一个很难题;否则我快下岗了! 搞一个专业的VC程序员基地~~~~~~需要网页制作高手!! ADO 的用法 m_pRecordset->Fields->GetItem(index)->GetName() 关于CRichEditCtrl的问题之二,取的当前可见行数? 请问在哪里下载IMAIL SERVER???各位帮帮忙!!! 高手请回答,ADO和BDE到底有什么区别,你选择谁?为什么? 高分求教!!!!!!!!!!!!!!!!怎样得到局域网上所有的机器名?(普通WINDOWS网络,用VB?,好象用WNET API可以的) 如何安装com.ibm.bridge2java.*这个包阿? 有人吗???求救! 你也许也会遇到这样的问题? 800分+工资管理原代码,如何解决ActiveReports打印图片的一个很难题!!! 大虾看过来. 一个access表一万条记录,想转到Mysql下(Mysql在Linux下)用什么方法和什么语言来做好? rs.CursorLocation=aduseclient是什么东西? 800分+工资管理原代码,如何解决ActiveReports打印图片的一个很难题! 简单SQL,免费送分! 用ASP如何上传文件,可以用组件。 谁知道怎么改运行中的程序的托盘图标???我用SysTray.ocx不能改? 新手提问,简单题目,大量给分~~~~~~~~~~ 如何使用getdispatch(), 800分+工资管理原代码,如何解决ActiveReports打印图片的一个很难题!! 关于在一个窗口中的多个数据窗口的问题 在比例尺为1:4000000的地图上A、B两地的距离是5厘米在比例尺为1;4000000的地图上A\、B两地距离5㎝同时从A、B两地相向开出一辆汽车每时行35㎞另一辆汽车每时行45㎞,找这样的速度,两辆车几时才 一根绳子第一次用去20%,第二次又用去余下的20%,两次相差8米,这根绳子原来的长是( )米. 李叔叔家种粮食作物8分之3公顷,种油料作物0.21公顷,种经济作物5分之1公顷.哪种面积大 KPa和KN怎么算 气压表上的《kpa》和Lb/in2什么意思,1个2个气压是多少 某县耕地面积约80万公顷,2005年粮食作物与经济作物的面积比是7:3,到今年将调整为6 :4哪一种作物的生产规模扩大了,扩大了多少万公顷.请回答完整要算式并解答 KPa和KN的换算 有一根绳子,第一次剪去全长的20%,第二次比第一次少剪5米,这时还剩53米.这根绳要有解释和算式.谢谢啦! 5π等于多少 KN换算吨 请教1千帕等于1千克每平方厘米吗?因为胎压表上标的是1kg/cm2,i汽车说明书上标的标准气压是前轮220kpa ,后轮250kpa.我查看胎压表的时候是以前轮2.2,后轮2.5 这种看法正确吗?胎压表外面的数值从0 5+5等于多少 填空 一根绳子第一次用去20%,第二次用余下的20%,两次相差2m.这根绳原来的长( )米.一根绳子第一次用去20%,第二次用余下的20%,两次相差2m.这根绳原来的长( )米. 在比例尺是1:6000000的地图上,量得A、B两地相距8厘米.甲,乙两车分别从A、B两地同时相对开出,经过4小时相遇.已知甲、乙两车的速度比是5:7,甲、乙两车每小时各行多少千米? 若大气压为1.01*10的5次要方Pa,水平屋顶面积为100平方米,则大气压对水平屋顶上表面压力为多少N 一根绳子第一次剪去全长的30%第二次剪去余下的20%剪了两次还剩下全长的百分之几 在比例尺是1比6000000的地图上,量得A、B两地相距8厘米.甲、乙两车分别从A、B两地同时相对开出,经过4小时相遇.已知甲、乙两车的速度比是5比7,甲、乙两车每小时各行多少千米?(用比例解) 大气压多少Pa 一根绳子第一次用去了20%,第二次又用去了余下的20%,两次相差2米,这根绳原来的长是多少米? 在一幅比例尺是1:6000000的地图上,量得甲乙两地之间的距离是8厘米,甲乙两地相距多少千米? 一根绳子减去20%后又接上5米,比原来断20分之3,则现在绳子多少米 一根绳子第一次用去20%.第二次用去25% 两次相差2米.这根绳原来长多少米 永宁乡有块4.5公顷耕地,种粮食作物、经济作物,油料作物的面积比是9:4:2.3种作物各种了多少公顷? 等于几? 在比例尺为1比6000000的地图上,量得南京到北京的距离是15厘米,南京到北京的实际距离大约是多少千米?南京长江大桥全长6700米,如果画在比例尺是100000分之1的地图上,应画多少厘米? 绳量井深,三折余4尺,四折短1尺,绳有多长(只列方程) 总压为1个大气压的体系,含50%氧气和50%氮气.问氧气的压强为多少? 在比例尺1:6000000的地图上,量出南京到北京的直线距离是15厘米.一架飞机以每小时900千米的速度飞往北京,几个小时可到达? 李叔叔家种粮食作物8分之3公顷中油料作物0.21公顷中经济作物5分之1公顷那种作物种植面积最大那种最大那种种植面积最小 当氮气大量增加会改变空气吗?会影响大气压吗?吃的面包包装是那种充气式的,一撕开袋子气体唰得一下全跑了出来,袋子就变瘪了.上网查了一下,像薯片、面包这种充气式包装充的一般是氮气. K=A的纸箱耐破数据是35.86kgf 纸皮受力面积是50.0cm2,施压面积是3.0cm2 请问如何转换成 lbs/in2 如果我是要转换成kgf/cm2 是不是:35.86/3=11.95kgf/cm2 有两根绳子,第一根的长度是第二根的1.5倍,第一根比第二根长3.6米,第一根长多少米?列方程 6升150兆帕的氮气等于多少大气压 纸箱抗爆破力150LBS-200LBSLBS是什么意思? 请问 1BAR=多少 = 多少kg/cm2 容积为20升的钢瓶中,装有150个大气压的氧气,现将氧气在等温条件下分装到容积为5L的氧气袋中,氧气袋原来是真空的,要求每袋氧气均达到10个大气压,设分装时无漏气,则最多可装几袋 K=K 纸箱耐破强度=150LBS/IN 是否标准太低 正确的耐破强度事多少? 我这..是头虱 还是 狗狗的虱子?我家养狗狗,它总是挠痒痒,我也没太在意,后来我觉得我全身都养,就像是有虫子,但是什么都看不到,躺下的时候能听到耳边有"皮皮"声,那天,一洗澡,关水后能看到 如果空气中的氧气都没了那么大气压是多少为什么? 动物一生都要经历哪些时期 一只小狗的重量等于6只鸡的重量,3只鸡的重量等于4只鸡的重量.一只小狗的重量等于几只鸭的重量? 有2根绳子共长63米,减去第一根的3/5和第二根的7/9,还余下共22米,第一根长多少米? 十斤铁和十公斤棉花哪个重? 动物的一生都要经历 等生长时期 某农场种植粮食作物和经济作物面积的比是3:2,一直种粮食作物252公顷,两种作物一共种了多少公顷 10斤棉花和10斤铁 哪个重 居然有人说一样重 棉花怎么可能比铁重 没常识 动物一生要经历过哪些变化?可以多选什么都行 如图是红星农场农作物种植面积的统计图,回答下列问题:(1)若已知有250公顷土地种植蔬菜和棉花,则小麦有多少公顷?(2)若已知种植小麦的面积比种植蔬菜的面积多120公顷,则种植总面积 十斤棉花,和十斤铁那个要重? 不同动物的一生所经历的生命周期一样吗?急 下面是城东村今年各种农作物计划种植面积统计图.己知粮食作物的种植面积是175公顷,蔬菜种植面积是多少公顷?(粮食作物25% 蔬菜30% 其他45%) 10斤棉花和10斤铁哪个重? 动物的一生都要经历( )、()、()、( )等生长时期.这些生长时期构成了动物的( )动物的一生都要经历( )、( )、( )、( )等生长时期.这些生长时期构成了动物的( ) 在比例尺为1:30000的地图上,实际距离是15千米,在图上应画多少厘米? 10公斤棉花和10斤铁哪个重?我就被难住了 5公斤等于多少毫升 某地的大气压为1.0*10^5Pa,这个大气压可以支持多高的水柱?要写出计算过程``! 在比例尺是1:4000000的地图上,量得A,B两地的距离是20厘米.在比例尺是1:4000000的地图上,量得A,B两地的距离是20厘米.一辆汽车以每小时80千米的速度从A地到B地,几小时可以到达? 0.5公斤到底等于多少克啊 大气压在哪里为0
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn