mfc设置编辑框显示的字体颜色
1、一、创建工程
点“文件”,点“新建”
点“MFC AppWizard.exe”,选择存储路径,输入工程名“颜色选择”
2、二、设计对话框
添加组框、单选按钮、编辑框

3、添加类内变量colour

4、添加m_edit、m_CsEdit变量

5、添加WM_CTLCOLOR消息的响应函数

6、添加单选按钮的响应函数;于初始化函数内添加编辑框之代码

7、三、编辑代码
双击OnRadio1函数,进入代码编辑区,编辑代码(输入红色代码)为: HBRUSH CMyDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) {
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: Change any attributes of the DC here if(nCtlColor == CTLCOLOR_EDIT) pDC->SetTextColor(colour);
// TODO: Return a different brush if the default is not desired return hbr; }
void CMyDlg::OnRadio1() {
// TODO: Add your control notification handler code here colour = RGB(255,0,0); m_edit.SetFocus(); }
void CMyDlg::OnRadio2() {
// TODO: Add your control notification handler code here colour = RGB(0,0,255);
m_edit.SetFocus(); }
void CMyDlg::OnRadio3() {
// TODO: Add your control notification handler code here colour = RGB(0,255,0); m_edit.SetFocus(); }
void CMyDlg::OnRadio4() {
// TODO: Add your control notification handler code here colour = RGB(255,255,0); m_edit.SetFocus(); } 四、编译 五、函数说明
1、CDC::SetTextColor函数声明
viod COLORREF SetTextColor(COLORREF crClor) crColor:以RGB形式设置颜色参数
功能: 设置文本颜色,返回值为文本颜色改变前的RGB值。 2、OnCtlColor函数声明
afx_msg HBRUSH OnCtlColor(CDC*pDC,CEnd*pWnd,UINT nCtlColor) pDC: 指向绘图设备的指针 pWnd: 指向具体控件的指针。 nCtlColor:控件类型。
功能: 是消息WM_CTLCOLOR的响应函数,当子控件将被绘画时主窗口调用该函数。