MFC改变按钮的颜色,方法简单,实用
来源:互联网 发布:景行知返免费阅读 编辑:程序博客网 时间:2024/05/16 09:08
手动添加消息映射的方法实现改变按钮的颜色,不必创建新的类!
1.将button修改为owner draw 类型
2.重载OnDrawItem函数,并对其改写
在适当的位置添加下面的语句
afx_msg void OnDrawItem(int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct);
ON_WM_DRAWITEM()
3.在消息响应函数里添加如下代码:
void CXXX::OnDrawItem(int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct)
{
CDC dc;
dc.Attach(lpDrawItemStruct->hDC);
ASSERT(lpDrawItemStruct->CtlType == ODT_BUTTON);
CString strText;
((CButton *)GetDlgItem(nIDCtl))->GetWindowText(strText);
SetBkMode(lpDrawItemStruct->hDC, TRANSPARENT);
//if (lpDrawItemStruct->itemState&ODS_SELECTED)
{
CBrush brush(RGB(255, 0, 0));
dc.FillRect(&(lpDrawItemStruct->rcItem), &brush);
DrawText(lpDrawItemStruct->hDC, strText, strText.GetLength(),
&lpDrawItemStruct->rcItem, DT_SINGLELINE | DT_VCENTER | DT_CENTER);
SetBkMode(lpDrawItemStruct->hDC, TRANSPARENT);
}
dc.Detach();
}
可以参考:http://blog.sina.com.cn/s/blog_65cab32d01013uad.html
- MFC改变按钮的颜色,方法简单,实用
- MFC中改变按钮颜色的方法
- 改变Android按钮颜色的高效方法
- 改变MFC按钮的颜色和字体大小的处理
- 点击按钮改变按钮颜色的简易方法
- VC/MFC简单实用的全屏方法
- 改变Android按钮背景颜色的高效方法
- Android按钮按下的时候改变颜色实现方法
- Android按钮按下的时候改变颜色实现方法
- MFC中一种改变静态文本颜色的方法
- MFC中改变编辑框文字大小、颜色的方法
- Android之简单改变按钮颜色方案
- MFC改变标题栏的颜色
- 关于MFC下改变buntton按下、弹起时按钮的背景颜色的问题
- Web中按下鼠标按钮颜色改变放开鼠标颜色恢复的方法
- C++学习笔记之MFC改变按钮颜色
- 改变控制台字体和背景颜色的简单方法
- [转]VC/MFC简单实用的全屏方法
- 合金含量偏低的钢,回火温度对钢的性能影响非常大
- biee发送邮件的功能
- boost 时间格式化
- 小球弹跳递归
- 数据库可用率监控工具
- MFC改变按钮的颜色,方法简单,实用
- oc -7 内存管理 相关参数 循环引用
- Ajax之get、post实例(最原始的XMLHttpServlet)
- objective C中继承、协议、分类和多态的实现
- Windows 下用 repo 下载Android源码
- 第一集UI:TextView如何显示丰富的文本
- IOS网络图片缓存详解
- STemWIN VNC server
- applicationContext.xml 配置文件的存放位置