设置button按钮背景色,及字体的颜色

新建一个对话框工程,在对话框中添加一个按钮,然后,从button类继承一个子类 CNewButton, 重载 PreSubclassWindow,修改按钮的属性 ModifyStyle( 0 , BS_OWNERDRAW );,告诉系统,用户手绘按钮; 然后再重载DrawItem,在这里边修改按钮的背景色,字体的颜色,修改lpDrawItemStruct参数的值,使用SetBkColor,设置按钮字体的颜色, SetTextColor设置字体的颜色, 使用FillRect可以填充按钮的背景色。设置完后,给对话框的按钮添加一个变量,基类就选择刚才创建的CNewButton

  1. voidCNewButton::PreSubclassWindow()
  2. {
  3. ModifyStyle(0,BS_OWNERDRAW);
  4. CButton::PreSubclassWindow();
  5. }
  6. voidCNewButton::DrawItem(LPDRAWITEMSTRUCTlpDrawItemStruct)
  7. {
  8. ::SetTextColor(lpDrawItemStruct->hDC,RGB(20,200,20));
  9. CDC::FromHandle(lpDrawItemStruct->hDC)->FillRect(&lpDrawItemStruct->rcItem,&CBrush(RGB(200,0,0)));
  10. DrawText(lpDrawItemStruct->hDC,"222",3,&lpDrawItemStruct->rcItem,DT_CENTER|DT_SINGLELINE|DT_VCENTER);
  11. }

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值