labwindows panel设置透明度方法
labwindows中只有设置panel颜色的方法,没有提供设置透明度的方法。但是在labwindows中可以调用Windows API函数来通过设置窗口透明度的方法来实现panel透明度的设置。
设置panel透明度需要经过一下几个步骤:
(1)需要设置窗口扩展风格。先获取窗口默认的窗口风格,然后再在原有风格基础上添加透明风格。
获取窗口窗口风格函数原型如下:
LONG_PTR GetWindowLongPtr(
HWND hWnd,
int nIndex
);
该函数可获取指定窗口的有关信息,也可用于获取窗口内存中指定偏移的32位度整型值。
index 为欲获取的信息指定值。可以是以下其中之一。
GWL_EXSTYLE 获取扩展窗口样式。更多信息,查阅CreateWindowEx.
GWL_STYLE 获取窗口样式(window styles)
GWLP_WNDPROC 获取窗口程序指示器,或描述指示器的句柄 。如果使用此参数,必须使用CallWindowProc回调函数。
GWLP_HINSTANCE 获取一个应用程序实例的句柄 。
GWLP_HWNDPARENT 如果只有一个父窗口,获取父窗口的句柄 。
GWLP_ID 获取窗口标识符。
GWLP_USERDATA 获取窗口关联的数据,是应用程序创建窗口时留给用户的数据。初始值是0。
DWLP_DLGPROC 获取一个对话框的指示器,或描述指示器的句柄 。如果使用此参数,必须使用CallWindowProc回调函数。 DWLP_MSGRESULT 获取一个对话框中的被处理的信息的值。
DWLP_USER 作为指示器或句柄来获取私有应用程序的额外的信息。
设置窗口风格函数如下:
|
nlndex | 说明 |
---|---|
GWL_EXSTYLE |
设定一个新的扩展风格。更多信息,请见CreateWindowEx。 |
GWL_STYLE | 设定一个新的窗口风格。 |
GWL_WNDPROC | 为窗口过程设置一个新的地址。 |
GWL_HINSTANCE | 设置一个新的应用程序实例句柄。 |
GWL_ID | 设置一个新的窗口标识符。 |
GWL_USERDATA |
设置与该窗口相关的用户数据。这些用户数据可以在程序创建该窗口时被使用。用户数据的初始值为0。 |
当hWnd参数标识了一个对话框时,也可使用下列值: | |
DWL_DLGPROC | 设置对话框过程的新地址。 |
DWL_MSGRESULT | 设置对话框中的消息处理程序的返回值。 |
DWL_USER | 设置的应用程序所私有的新的额外信息,例如句柄或指针。 |
dwNewLong:指定的替换值。
(2)设置窗口透明度
函数原型为:
BOOL SetLayeredWindowAttributes(
HWND hwnd,
COLORREF crKey,
BYTE bAlpha,
DWORD dwFlags
);
其中,dwFlags参数可取以下值:
LWA_ALPHA时:crKey参数无效,bAlpha参数有效;
LWA_COLORKEY:窗体中的所有颜色为crKey的地方将变为透明,bAlpha参数无效。其常量值为1。
LWA_ALPHA | LWA_COLORKEY:crKey的地方将变为全透明,而其它地方根据bAlpha参数确定透明度
int hwnd,index;
index=GetWindowLongPtr((HWND)hwnd,GWL_EXSTYLE);
SetwindowLongPtr((HWND)hwnd,GWL_EXSTYLE,index|WS_EX_LAYERED);
SetLayeredWindowAttributes((HWND)hwnd,0,125,LWA_ALPHA): //125为透明度
labwindows panel设置透明度方法相关推荐
- Android TextView设置透明度方法的注意点
TextView 设置字体透明度 一般自己都是在颜色值前面添加多少透明度即可, 不如设置字体颜色的透明度为50% android:textColor="#50D81B60" 这里 ...
- html设置表单透明度,css利用transparent属性设置透明度的方法
css利用transparent属性设置透明度的方法 发布时间:2020-09-14 13:44:46 来源:亿速云 阅读:188 作者:小新 这篇文章主要介绍css利用transparent属性设置 ...
- css设置透明度的两种方法
一.css rgba()设置颜色透明度 语法: rgba(R,G,B,A); RGBA 是代表Red(红色) Green(绿色) Blue(蓝色)和 Alpha(不透明度)三个单词的缩写.RGBA 颜 ...
- html背景颜色透明度hex,CSS背景颜色设置透明度的两种方法(8位hex和rgba)
目录 一. 6位HEX转RGBA 二.8位HEX 在写微信小程序的时候,有个需求是按背景颜色 background-color要设透明度0.85,让背景图片 background-image透一点出来 ...
- css如何设置透明度?设置透明度的两种方法(代码实例)
在前端页面开发布局的时候,为了给用户呈现不同的效果,经常需要设置透明度,那么css是怎样设置透明度的?本章给大家介绍用css设置透明度的两种方法(代码实例).有一定的参考价值,有需要的朋友可以参考一下 ...
- c# 可以设置透明度的 Panel 组件
c# 可以设置透明度的 Panel 组件 Posted on 2013-12-28 13:47 快乐家++ 阅读(7419) 评论(2) 编辑 收藏 1 2 3 4 5 6 7 8 9 10 11 1 ...
- 154在屏幕中绘图时设置透明度(扩展知识:为图片视图添加点击手势识别器,来实现点击事件操作)...
一张图片,通过混合模式绘制后,能得到不同效果的图片. 这里的示例仅是测试效果:实际上可以通过不同程度的混合模式绘制,来得到符合需求的效果. 效果如下: ViewController.h 1 #impo ...
- css浮动,清除浮动,溢出属性,定位,设置透明度
浮动>>>float 在css中,任何元素都可以浮动. 浮动元素会生成一个块级框,而不论它本身是什么元素. 关于浮动的两个特点: 浮动的框可以像做或向右移动,直到它的外边缘碰到包含框 ...
- 网页定位(position属性、相对定位、绝对定位、固定定位、z-index、设置透明度)
position属性 static:默认值,没有定位 relative:相对定位,相对于自己原来的位置进行偏移 absolute:绝对定位,以它最近一个已经定位的祖先元素为基准进行偏移 fixed:固 ...
- css如何利用transparent属性设置透明度?transparent属性绘制各种三角形
想到用css设置元素透明度,大家的第一反应会是:用Opacity属性来设置透明度,其实在css中还有其他设置透明度的方法.本章给大家介绍用transparent属性设置透明度,以及用transpare ...
最新文章
- 肠子的小心思(二):你坐在马桶上的姿势很可能不正确
- 链表问题1——打印两个有序链表的公共部分
- 电脑安装python步骤-windows10系统安装python的详细步骤
- Git 之一 起源、安装、配置
- vue.js根据数据循环生成表格_vue.js循环for(列表渲染)详解
- c++调用Libsvm
- mysql两列取小_mysql – 我想获取两列特定列之间的列值
- springboot整合alibbaba-dubbo
- houghcircle函数_Hough Circle 变换
- AcWing 166. 数独
- 9.6 awk(上);9.7 awk(下)
- 微博html怎么编辑器,制作一个微博文本编辑器
- 计算机软硬件逻辑等价性是指,南航计算机组成原理复习ppt.ppt
- 【书影观后感 十三】甲申三百七十八年祭
- Dolby Digital(Dolby Surround Digital,杜比数码环绕声)
- 初谈黑客破解密码的原理
- 我是一个线程(转载自: IBM刘欣)
- 情商高手比智商高手要可怕多了
- Windows编程(2)
- libpng warning:iCCP:known incorrect sRGB profile
热门文章
- 【汇编】intel core cpu中常用的寄存器
- grep 查找内容有特殊字符怎么办
- word撰写论文时公式格式:公式居中,编号右对齐(编号上下居中或底部对齐);公式编号引用
- 群晖第三方套件中心地址
- 解决 fast api “detail“: “There was an error parsing the body“问题
- 芝麻信用接口 java_java 对接芝麻信用 -用芝麻私钥解密错误
- 一款PHP版三合一收款码_附50多款模板源码
- STM32通用和复用功能I/O(GPIO和AFIO) ADC DMA
- matlab 线性拟合polyfit_matlab如何做线性拟合
- 磁珠 符号_史上最全面的磁珠知识大全