CEDIT 控件背景色和字体色--重写CTLCOLOR
2015-12-03 21:22
246 查看
先在对话框添加WM_CTLCOLOR消息函数,然后编辑WM_CTLCOLOR消息函数代码,代码如下。
HBRUSH CMessageView::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CEditView::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: 在此更改 DC 的任何特性
if (nCtlColor == CTLCOLOR_EDIT)
{
pDC->SetTextColor(RGB(200, 45, 0));//设置字体颜色
pDC->SetBkColor(RGB(255, 255, 255));//设置字体背景颜色
HBRUSH B = CreateSolidBrush(RGB(255, 255, 255));//背景色
return B;
}
// TODO: 如果默认的不是所需画笔,则返回另一个画笔
return hbr;
}
如果要改变IDC_EDIT1控件的颜色,在对话框中添加 WM_CTLCOLOR 消息处理函数,添加方法与鼠标,键盘消息一样。
函数内添加下列代码即可。
HBRUSH CTestDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if (pWnd->GetDlgCtrlID() == IDC_EDIT1) //控件
{
pDC->SetTextColor(RGB(255, 0, 0));
}
return hbr;
}
HBRUSH CMessageView::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CEditView::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: 在此更改 DC 的任何特性
if (nCtlColor == CTLCOLOR_EDIT)
{
pDC->SetTextColor(RGB(200, 45, 0));//设置字体颜色
pDC->SetBkColor(RGB(255, 255, 255));//设置字体背景颜色
HBRUSH B = CreateSolidBrush(RGB(255, 255, 255));//背景色
return B;
}
// TODO: 如果默认的不是所需画笔,则返回另一个画笔
return hbr;
}
如果要改变IDC_EDIT1控件的颜色,在对话框中添加 WM_CTLCOLOR 消息处理函数,添加方法与鼠标,键盘消息一样。
函数内添加下列代码即可。
HBRUSH CTestDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if (pWnd->GetDlgCtrlID() == IDC_EDIT1) //控件
{
pDC->SetTextColor(RGB(255, 0, 0));
}
return hbr;
}
相关文章推荐
- bzoj:2018 [Usaco2009 Nov]农场技艺大赛
- 关于内存对齐的那些事
- OS X升级到10.10使用后pod故障解决方案出现
- HDU - 1863 畅通工程(最小生成树)
- win32获取和设置本地已经存在的网站的cookie
- Codeforces 601A The Two Routes(暴力)
- cannot verify client.(3000)
- IOS C语言 函数
- 爬爬爬之路:UI(十四) 网络请求
- nyoj 290
- libsvm的使用
- MStar之公司简介
- OC基础(23)
- hdu 4287 Intelligent IME
- 南大软院大神养成计划--网站
- 同步集合
- noip2015pj t4
- scanf
- PHP基础--变量
- badusb_payload(一)添加管理员用户