工控编程吧
标题: 上位机MFC如何改变控件的颜色 [打印本页]
作者: qq263946146 时间: 2019-7-27 12:39
标题: 上位机MFC如何改变控件的颜色
可以简单的从父类派生一个子类。在子类中实现控件背景,字体等颜色的设置。
例如我们实现一个编辑框背景,字体颜色设置的功能
1.新建立一个对话框工程,添加一个新的类class CEditEx : public CEdit。
2.添加消息ON_WM_CTLCOLOR_REFLECT处理函数
- HBRUSH CEditEx::CtlColor(CDC* pDC, UINT nCtlColor)
- {
- // TODO: Change any attributes of the DC here
- pDC->SetTextColor(RGB(0xFF, 0x00, 0x00));
- pDC->SetBkColor(RGB(0x99, 0xCC, 0xFF));
- HBRUSH hBrush = CreateSolidBrush(RGB(0x99, 0xCC, 0xFF));
- return hBrush;
- // TODO: Return a non-NULL brush if the parent's handler should not be called
- return NULL;
- }
复制代码
这样我们的类就创建好了。
字体的颜色,背景的颜色也在函数内设置了。效果如图
(, 下载次数: 2)