代码:
1、对话框头文件添加定义:
CBrush m_newBR;
bool m_blChange;
2、对话框OnInitDialog()中添加:
m_newBR.CreateSolidBrush(RGB(255,0,0));
m_blChange = false;
3、对话框OnCtlColor()中添加:
if (pWnd->GetDlgCtrlID() == IDC_EDIT1 && m_blChange)
{
pDC->SetBkMode(TRANSPARENT);
return m_newBR;
}
4、重写编辑框的EN_CHANGE事件,添加:
CString str;
m_result.GetWindowText(str);
m_blChange = str == "change";
m_result.RedrawWindow();
应用场景:在信息录入界面,需要对某关键字特别提醒
高级扩展:在信息录入时,当内容不符合某些规则时提醒
本文介绍了一种通过修改编辑框背景色来实现关键字高亮的方法。具体步骤包括:定义画刷和变化标志、创建红色实心画刷、在OnCtlColor()中设置背景透明并返回画刷、监听编辑框内容变化并更新背景色。
1336

被折叠的 条评论
为什么被折叠?



