VC Edit 背景色问题

二 VC中Edit背景色方法一         利用向导映射CParentDlg的WM_CTLCOLOR消息,产生函数:HBRUSH CParentDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);pDC是AboutDlg的设备上下文,pWnd是CParentDlg中发送该消息的control指针,nCtlColor市Control的类型编码。对其进行如下修改:

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

{

   if ((pWnd->GetDlgCtrlID() == IDC_EDIT1) && (nCtlColor == CTLCOLOR_EDIT))

   {

      COLORREF clr = RGB(255,0,0);

      pDC->SetTextColor(clr);   //设置红色的文本

      clr = RGB(0,0,0);

      pDC->SetBkColor(clr);     //设置黑色的背景

      m_brMine = ::CreateSolidBrush(clr);

      return m_brMine;  //返回的是背景色对应的刷子句柄

   }

   else

   {

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

      return hbr;

   }

} 方法二   自定义一个CColorEdit类,该类从CEdit派生,重写该类的OnCtlColor消息(如方法一),对使用背景色的Edit控件,将其声明为CColorEdit的类,则该Edit控件就能定制背景色和前景色了。
参考:http://www.360doc.com/relevant/22592397_more.shtml
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值