C++ MFC深入详解之----设置控件背景透明
首先要添加OnCtlColor函数
1.该函数在VC++中的添加方法为:快捷键Ctrl+W或右击空白处打开ClassWizard对话框(也可以菜单->view->ClassWizard),在Message Maps里的Messages框中找到OnCtlColor,点击Add Function添加
在VS 类视图中右键点击你的DLG类点击属性,在上面找到消息图标,滑动,找到OnCtlColor函数添加
2.第二种方法是自己手动添加
- 头文件中添加函数声明
- cpp文件中添加消息映射和响应函数
// 1. 在对话框的头文件中加入
afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);// 2. 在对话框的cpp文件中加入
BEGIN_MESSAGE_MAP(CtransparentDlg, CDialog)ON_WM_CTLCOLOR()//}}AFX_MSG_MAP
END_MESSAGE_MAP()//该例子是设置静态文本透明
HBRUSH CtransparentDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{HBRUSH hBrush = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); if(nCtlColor == CTLCOLOR_STATIC) //静态文本{pDC->SetBkMode(TRANSPARENT); //设置控件透明return (HBRUSH)::GetStockObject(NULL_BRUSH); //记住一定要有这句}return hBrush;
}
- OnCtlColor可设置的控件类型:
- CTLCOLOR_BTN Button control
- CTLCOLOR_DLG Dialog box
- CTLCOLOR_EDIT Edit control
- CTLCOLOR_LISTBOX List-box control
- CTLCOLOR_MSGBOX Message box
- CTLCOLOR_SCROLLBAR Scroll-bar control
- CTLCOLOR_STATIC Static control
C++ MFC深入详解之----设置控件背景透明相关推荐
- MFC 加入背景图片并让控件背景透明
/*加入背景图片*/ BOOL CTOOLDlg::OnEraseBkgnd(CDC* pDC) { // TODO: 在此加入消息处理程序代码和/或调用默认值 CDialog::OnEraseB ...
- 设置控件背景背景颜色为透明
有时候,我们需要将控件的背景颜色设定为透明,比如说label(标签)控件.那么,如何将控件的背景颜色设定为透明?是不是只要将控件的BackColor属性设为Transparent(透明)就可以了呢?答 ...
- 关于Static控件背景透明时文本覆盖重影的问题
2019独角兽企业重金招聘Python工程师标准>>> 关于Static控件背景透明时文本覆盖重影的问题 通过映射OnCtlColor消息,而后在该函数中使用pDC->SetB ...
- MFC 设置static(标签)控件背景透明
1.设置控件的属性Transparent 为True 2.重载OnCtlColor函数 在该函数体中加入以下代码: if(pWnd->GetDlgCtrlID() == IDC_XXXX) // ...
- VC设置CEdit控件背景透明、文字背景也透明
开发环境:VC6, a dialog based MFC application. 主界面: 为对话框添加WM_CTLCOLOR消息响应函数: HBRUSH CDDlg::OnCtlColor(CDC ...
- QT设置控件背景为透明
第一步选择更改样式表 第二步样式表中添加如下的内容 background: transparent;
- Android设置控件背景颜色
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...
- VC 控件背景透明、文字背景透明
Visual C++ 开发实战宝典 功能:位图上显示文字,背景透明. void CP400Dlg::OnPaint() { .... CBitmap bmp; bmp.LoadBitmap(IDB ...
- Linux服务器,服务管理--systemctl命令详解,设置开机自启动
Linux服务器,服务管理--systemctl命令详解,设置开机自启动 syetemclt就是service和chkconfig这两个命令的整合,在CentOS 7就开始被使用了. 摘要: syst ...
最新文章
- c++异常的层次结构(继承在异常中的应用)
- php mysql 内存溢出_关于MySQL的整型数据的内存溢出问题的应对方法_MySQL
- dll已加载但找不到入口点DLLRegisterServer
- SAP CRM Survey调查问卷的模型设计原理解析
- 浦发网银安装显示连接服务器失败,上海浦东发展银行网上银行登录失败怎么办...
- Mybatis批量insert报错的解决办法【the right syntax to use near '' at line...】
- text-align 属性,输入框数字向右靠
- ios 团购信息客户端demo(二)
- R:应用时间序列分析--基于R(1)第一章 时间序列分析简介
- 计算机的组装与维修的知识点总结,计算机组装与维修教学总结
- HTML 超文本标记语言
- 数据库原理与应用教程(何玉洁 第四版)第七章课后题
- 衣带渐宽终不悔为伊消得人憔悴,土蜂蜜科技终成正果
- 作为程序员如何赚到第一桶金?
- 远程实时调试手机上的web页面
- Android数据编码之Base64
- 版本号(SNAPSHOT GA....)都是啥意思
- 【问题解决】“Web“ facet resources
- 众多促销标签免抠元素素材一键即可获取
- 前端页面查看PDF文档内容总结
热门文章
- 【Mail小技巧】如何使用Python优雅的发送带有pdf附件的电子邮件(含源代码,小白也会用!)
- bowtie 加mn标签_Bowtie2使用方法与参数详细介绍 - Public Library of Bioinformatics
- string::find和string::npos
- 电商系统_day02
- (Servlet+Jsp)Web编程笔记(一套就够了)
- 笔记:百度地图API 标记回显
- Linux中JDK的下载与配置
- 他,生物系毕业,刚入职连 Java 都没听过,却在马云的要求下,三周写出淘宝网雏形......
- 循环课后题型整理(二十道)
- 招聘报表分析怎么做?大公司都在用的招聘分析模型免费用