MFC工控项目实例二十二主界面计数背景颜色改变

承接专栏《MFC工控项目实例二十一型号选择界面删除参数按钮禁用切换》

1、在SEAL_PRESSUREDlg.h文件中添加代码

cpp 复制代码
class CSEAL_PRESSUREDlg : public CDialog
{
public:
CBrush m_brush1;
    CBrush m_brush2;
    CBrush m_brush3;
    ...
}    

2、在SEAL_PRESSUREDlg.cpp文件中添加代码

cpp 复制代码
BOOL CSEAL_PRESSUREDlg::OnInitDialog()
{
	CDialog::OnInitDialog();
	...
	m_brush1.CreateSolidBrush(RGB(0,255,0));//绿色
	m_brush2.CreateSolidBrush(RGB(255,0,0));//红色
	m_brush3.CreateSolidBrush(RGB(255,255,255));//白色
   ...
}

HBRUSH CSEAL_PRESSUREDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
{
	HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
	
	if ((pWnd->GetDlgCtrlID() == IDC_STATIC_OK))
{
		pDC->SetTextColor(RGB(255, 255, 255));//设置文本框字体颜色
        pDC->SetBkMode(TRANSPARENT);
		 return (HBRUSH)m_brush1;
}
		if ((pWnd->GetDlgCtrlID() == IDC_STATIC_NG))
{
		pDC->SetTextColor(RGB(255, 255, 255));//设置文本框字体颜色pDC->SetBkMode(TRANSPARENT);//设透明
      pDC->SetBkMode(TRANSPARENT);
			 return (HBRUSH)m_brush2;
}
		if ((pWnd->GetDlgCtrlID() == IDC_STATIC_TOTAL))

		{
		pDC->SetTextColor(RGB(0, 0, 0));//设置文本框字体颜色pDC->SetBkMode(TRANSPARENT);//设透明
     	 pDC->SetBkMode(RGB(255, 255, 255));
		 return (HBRUSH)m_brush3;
}
	return hbr;
}
	

运行程序

相关推荐
老约家的可汗16 分钟前
list 容器详解:基本介绍与常见使用
c语言·数据结构·c++·list
顶点多余23 分钟前
线程互斥+线程同步+生产消费模型
java·linux·开发语言·c++
Albert Edison24 分钟前
【ProtoBuf 语法详解】更新消息|保留字段|未知字段
开发语言·c++·protobuf
無限進步D1 小时前
算竞常用STL cpp
开发语言·c++·算法·竞赛
南境十里·墨染春水1 小时前
C++ 笔记 深赋值 浅赋值(面向对象)
开发语言·jvm·c++·笔记
今儿敲了吗2 小时前
算法复盘——差分
数据结构·c++·笔记·学习·算法
郭涤生2 小时前
std::async 和 std::future的使用
c++
墨韵流芳2 小时前
CCF-CSP第41次认证第一题——平衡数
c++·算法·ccf·平衡数
水饺编程3 小时前
第4章,[标签 Win32] :SysMets3 程序讲解01
c语言·c++·windows·visual studio
郝学胜-神的一滴3 小时前
巧解括号序列分解问题:栈思想的轻量实现
开发语言·数据结构·c++·算法·面试