MFC开发IM-第十二篇、MFC改变static text背景色为透明
这是别人的 建议:
//*****************************************
{
首先,你要区分文本框和静态文本框,这是两种不同的控件,透明方法完全不同!静态文本框的默认背景是灰色,也就是对话框的“底色”。只有文本框(编辑框)的默认背景为白色。如果是静态文本框,那么控件属性里设置选中TRANSPARENT,你上面的代码就可以了。如果是编辑框,那么需要改变刷子hbr 为空画刷。但编辑框,只在OnCtrlColor里面做,效果是很差的,你需要处理OnEraseBackGround,最好能重载编辑框类,处理一下文字刷新,否则总是有显示BUG。
这是静态文本框吧。
没错,静态文本框,设置属性透明就可以了,一般不用OnCtrlColor设置空的背景画刷。
那我用上面的方法,显示出来还是白色的,挡住了后面的背景图。
首先,你要确定背景是在OnEreaseBackground里面做的,而不是OnPaint。OnPaint里面的绘图和控件相互遮挡很正常,这是刷新逻辑的冲突。
其次,OnCtrlColor里面,返回空画刷试试:
1
2
|
pDC->SetBkMode(TRANSPARENT); //设置背景模式为透明
return ( HBRUSH )GetStockObject(NULL_BRUSH); //返回一个空画刷
|
确实是这么写的,但是效果是静态文本框透明了,直接透成了电脑桌面的颜色,不是对话框的背景色。。。。。我要它和背景融为一体
}
//*************************************************************
经过我测试
pDC->SetBkMode(TRANSPARENT);
//设置背景模式为透明
return
(
HBRUSH
)GetStockObject(NULL_BRUSH);
//返回一个空画刷
这两行可用:
以下贴出我代码里面的片段
{
//对指定的static text设置背景颜色 字体等 主要是头部栏 switch (pWnd->GetDlgCtrlID()) { //针对ID为IDC_CTL1、IDC_CTL2和IDC_CTL3的控件进行同样的设置 case IDC_STATIC12: //case IDC_CTL2: //case IDC_CTL3: { pDC->SetBkMode(TRANSPARENT); pDC->SetTextColor(RGB(255, 255, 255)); pWnd->SetFont(cFont); HBRUSH B = CreateSolidBrush(RGB(125, 125, 255)); //return (HBRUSH)B; return (HBRUSH)GetStockObject(NULL_BRUSH);//返回一个空画刷 } default: return CDialog::OnCtlColor(pDC, pWnd, nCtlColor); }
}
//***************************
效果如下
MFC开发IM-第十二篇、MFC改变static text背景色为透明相关推荐
- Python开发【第十二篇】:DOM
文档对象模型(Document Object Model,DOM)是一种用于HTML和XML文档的编程接口.它给文档提供了一种结构化的表示方法,可以改变文档的内容和呈现方式.我们最为关心的是,DOM把 ...
- Android UI开发第三十二篇——Creating a Navigation Drawer
Navigation Drawer是从屏幕的左侧滑出,显示应用导航的视图.官方是这样定义的: The navigation drawer is a panel that displays the ap ...
- python制作网页样式与布局_Python开发【第十二篇】:CSS装饰页面
CSS称为层叠样式表,是Cascading Style Sheets的缩写.CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化. CSS引入方式: 行内式:对标签元素添加 ...
- 《C++游戏开发》笔记十二 战争迷雾:初步实现
本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9475979 作者:七十一雾央 新浪微博:http:// ...
- SAP UI5 应用开发教程之六十二 - 基于 OData V4 的 SAP UI5 表格控件使用方法介绍试读版
一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 应用开发教程之一:Hello World SAP UI5 应用开发教程之二:SAP U ...
- SAP UI5 应用开发教程之四十二 - SAP UI5 自带的 Diagnostics 诊断工具使用方法介绍
一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 应用开发教程之一:Hello World SAP UI5 应用开发教程之二:SAP U ...
- SAP UI5 应用开发教程之三十二 - 如何创建一个自定义 SAP UI5 控件试读版
一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 应用开发教程之一:Hello World SAP UI5 应用开发教程之二:SAP U ...
- SAP UI5 应用开发教程之八十二 - 采用 OPA5 开发支持页面跳转的 SAP UI5 集成测试用例试读版
一套适合 SAP UI5 初学者循序渐进的学习教程 教程目录 SAP UI5 本地开发环境的搭建 SAP UI5 应用开发教程之一:Hello World SAP UI5 应用开发教程之二:SAP U ...
- MySQL数据库,从入门到精通:第十二篇——MySQL数据类型详解
MySQL数据库,从入门到精通:第十二篇--MySQL数据类型详解 第 12 章_MySQL数据类型精讲 1. MySQL中的数据类型 2. 整数类型 2. 1 类型介绍 2. 2 可选属性 2. 2 ...
最新文章
- shell脚本中常见的一些特殊符号和作用详解
- vs code 默认是单击在原tab上打开,改为单击后其它文件在新tab打开
- 【牛客 - 2B】树(思维,dp,有坑)
- python(c++)刷题+剑指offer
- 【Java】辨析JUnit4中的@AfterClass、@BeforeClass、@after、@before
- 计算并联电阻的阻值(信息学奥赛一本通-T1015)
- 2019-0404视觉SLAM的学习第三讲01
- Eclipse用法和技巧十三:自动生成的TODO注释1
- Insurance 项目——Mybetis-generator生成
- 美图秀秀计算机教程,美图秀秀批处理软件详细图文版使用教程,一起学习吧
- 后台业务管理系统高保真Axure原型模板
- 图片上传到FTP服务器之后,从ftp服务器下载图片到本地会失真
- 为什么Service层要定义接口?
- androrid按键事件
- 微服务之API网关:Kong:概要与安装
- python红楼梦绘制词云形状图_python数据挖掘实战笔记——文本挖掘(5):词云美化之绘制《红楼梦》词云图...
- 音乐制作软件Ableton Live 10 Suite Mac激活教程
- win7计算机字体大小怎么设置,新手使用win7系统中设置桌面的字体大小的方法
- 边际电价计算matlab,PJM节点边际电价计算方法和其应用.PDF
- 51单片机播放音乐(一):蜂鸣器