如何更改的 MFC 编辑控件的背景色
1个回答
2015-01-08
展开全部
你好,
在DialogBar类中,相应WM_CTLCOLOR消息。就是OnCtlColor(),那里面判断传入进来的ID号为你要的编辑控件,然后,用得到的DC,设置字体,颜色,最后返回一个笔刷,这个笔刷,就是要用来刷Edit空间背景的笔刷。
1.首先在自己需要设置界面的对话框上点击右键-->建立类向导-->加入WM_CTLCOLOR消息-->自动生成OnCtlColor()函数,此函数可以对本对话框的控件的界面外观做修饰,用法如下:
将类向导产生的函数做如下修改:
HBRUSH CDialogColor::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{HBRUSH hbr = CDialog::OnCtlColor(pDC,pWnd, nCtlColor);
if (nCtlColor == IDE_EDIT1)
{
return new CBrush(RGB(255,234,56));
}
return hbr;
}
希望回答对您有帮助.
在DialogBar类中,相应WM_CTLCOLOR消息。就是OnCtlColor(),那里面判断传入进来的ID号为你要的编辑控件,然后,用得到的DC,设置字体,颜色,最后返回一个笔刷,这个笔刷,就是要用来刷Edit空间背景的笔刷。
1.首先在自己需要设置界面的对话框上点击右键-->建立类向导-->加入WM_CTLCOLOR消息-->自动生成OnCtlColor()函数,此函数可以对本对话框的控件的界面外观做修饰,用法如下:
将类向导产生的函数做如下修改:
HBRUSH CDialogColor::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{HBRUSH hbr = CDialog::OnCtlColor(pDC,pWnd, nCtlColor);
if (nCtlColor == IDE_EDIT1)
{
return new CBrush(RGB(255,234,56));
}
return hbr;
}
希望回答对您有帮助.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询