NULL_BRUSH 或HOLLOW_BRUSH和GetStockObject函数

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;  

}

效果:


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值