NULL_BRUSH 或HOLLOW_BRUSH和GetStockObject函数

备注:HOLLOW_BRUSH等价于NULL_BRUSH,都代表透明化刷

HGDIOBJ GetStockObject( __in  int fnObject)
    参数:fnObject代表笔或者刷的类型,可以参看MSDN

返回值:返回一个GDIOBJ对象的句柄。根据需要转换成笔/刷的句柄,

如:HBRUSH(GetStockObject(HOLLOW_BRUSH));

实例应用:一个透明的背景的编辑框

HBRUSH CBackimageDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)

{

HBRUSH hbr =CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

switch(nCtlColor)

{

case CTLCOLOR_STATIC: //对所有静态文本控件的设置

{

pDC->SetBkMode(TRANSPARENT);//设置背景为透明                                        pDC->SetTextColor(RGB(0,0,0)); //设置字体颜色

returnHBRUSH(GetStockObject(HOLLOW_BRUSH)); // 必须

}

case CTLCOLOR_EDIT:  //对所有编辑框控件的设置

{

pDC->SetBkMode(TRANSPARENT);//设置背景为透明                                   pDC->SetTextColor(RGB(0,0,0)); //设置字体颜色

returnHBRUSH(GetStockObject(HOLLOW_BRUSH)); // 必须

}

default:

returnCDialog::OnCtlColor(pDC,pWnd, nCtlColor);

}

return hbr;

}

效果:

http://blog.csdn.net/qq2399431200/article/details/10991917

HOLLOW_BRUSH等价于NULL_BRUSH,都代表透明化刷的更多相关文章

  1. if (user?.Identity?.IsAuthenticated ?? false)这几个问号分别都代表啥意思?

    if (user?.Identity?.IsAuthenticated ?? false)这几个问号分别都代表啥意思? 0 悬赏园豆:5 [已解决问题] 浏览: 229次 解决于 2018-05-16 ...

  2. Spring bean中的properties元素内的name 和 ref都代表什么意思啊?

    <bean id="userAction" class="com.neusoft.gmsbs.gms.user.action.UserAction" sc ...

  3. Linux系统文件名字体不同的颜色都代表什么

    Linux系统文件名字体不同的颜色都代表什么   在Linux中,文件的颜色都是有含义的.   其中, Linux中文件名颜色不同,代表文件类型不一样.   如下所示: www.2cto.com   ...

  4. 3.Linux系统文件名字体不同的颜色都代表什么

    在Linux中,文件的颜色都是有含义的.其中, Linux中文件名颜色不同,代表文件类型不一样.如下所示: 白色:表示普通文件浅蓝色:表示链接文件: 灰色:表示其他文件: 绿色:表示可执行文件: 红色 ...

  5. java中下面这些引入都代表什么意思啊?

    import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; import java.uti ...

  6. Linux下运行top命令显示的PR\NI\RES\SHR\S\%MEM TIME+都代表什么

    PID 进程号 USER 用户名 PR 优先级 NI nice值.负值表示高优先级,正值表示低优先级 RES 进程使用的.未被换出的物理内存大小,单位Kb S 进程状态: D 不可中断的睡眠状态 R ...

  7. MySQL 表数据多久刷一次盘?

    前言 事情是这样的,在某乎的邀请回答中看到了这个问题: - 然后当时我没多想就啪一下写下来这样的答案: 这个其实要通过 MySQL 后台线程来刷的,在 Buffer Pool 中被修改的过的 Page ...

  8. 64 位 Windows 平台开发注意要点之注册表重定向

    Window 系统错误代码 ERROR_SUCCESS,本博客中一律使用 NO_ERROR 代替.虽然 ERROR_SUCCESS 与 NO_ERROR 是完全等价的,都代表成功,但是后者却和其他错误 ...

  9. JavaScript:理解prototype与__proto__,原型与原型链

    JS中的继承是原型继承,通过原型实现的.为了理解原型,我想先讲讲对象的内部属性[[prototype]]和属性__proto__,函数的属性prototype. 对象的内部属性[[prototype] ...

随机推荐

  1. sparksql parquet 分区推断Partition Discovery

    网上找的大部分资料都很旧,最后翻了下文档只找到了说明 大概意思是1.6之后如果想要使用分区推断就要设置数据源的basePath,因此代码如下 java public class ParitionInf ...

  2. 短文评估【安徽省选2003】- hash / trie

    题目分析 其实是hash/trie裸题,讲一下hash的做法:如果其小写状态是第一次出现则加入集合,同时将小写状态加入小写单词的hash表,最后查时查出出现次数即可. code #include< ...

  3. Oracle数据库表空间 数据文件 用户 以及表创建的SQL代码

    --create the tablespace CREATE SMALLFILE TABLESPACE "TABLE_CONTAINER" --创建表空间 DATAFILE 'E: ...

  4. 输入框改变placeholder字体颜色

    ::-webkit-input-placeholder {  color: red;}:-moz-placeholder {  color: red;}::-moz-placeholder{color ...

  5. erlang工作前新手学习指引路线

    Erlang学习总结,新手指引 要具体的写erlang入门技术网上有非常多,我写的肯定没有那些大牛写的好,自己也实习了快一个月,也做一个总结,给后erlang初学兴趣者提供些拙见吧 第一步搭建学习环境 ...

  6. 区间树(segment tree)

    区间树能够对保存的数据进行适当的预处理,以快速回复查询. 区间树常用于在一维数组的特定区间对查询进行快速回复.区间树的最典型也是最简单的应用就是求区间最小值的问题. 区间树的基本思路是,生成表示给定数 ...

  7. Multi-processor having shared memory, private cache memories, and invalidate queues having valid bits and flush bits for serializing transactions

    Multi-processor systems are often implemented using a common system bus as the communication mechani ...

  8. UML该元素的行为为基础的元素

     Behavioral thingsare the dynamic parts of UML models. These are the verbs of a model, representin ...

  9. CSRF 专题

    一.CSRF是什么? CSRF(Cross-site request forgery),中文名称:跨站请求伪造.      也被称为:one click attack/session riding(一 ...

  10. 32位与64位、单精度(single-precision)与双精度(double-precision)

    What's the difference between a single precision and double precision floating point operation? 0. 6 ...