我在工程里添加了一个类,CMyEdit继承了CEdit。我重载了CtlColor方法想改变文本框的字体,可是不起作用为什么呢?是不是我哪里缺少代码?
代码:
MyEdit.h
afx_msg HBRUSH CtlColor(CDC* pDC, UINT nCtlColor);MyEdit.cpp
HBRUSH CMyEdit::CtlColor(CDC* pDC, UINT nCtlColor) 
{
// TODO: Change any attributes of the DC here
pDC->SetBkMode(TRANSPARENT);
pDC->SetTextColor(RGB(0xff,0xff,0xff));
return m_brHollow;
}调用代码:
void CSDIView4::AddMsgToEdit(CString str)
{
//追加字符串
int nLength = my_showMsg.SendMessage(WM_GETTEXTLENGTH);
my_showMsg.SetSel(nLength, nLength);
my_showMsg.ReplaceSel(str);
}

解决方案 »

  1.   

    非常感谢A_Qiao, 你无心插柳, 我这里柳成荫, 解决了一个大问题!
      

  2.   

    这就是我上CSDN的一大动力, 嘿嘿.3月3日插柳, 6月9日成荫, 快了还是慢了?
      

  3.   

    我用了setfont()
    可是不行!
    建议用数据流把lf存进去,用的时候再读出来
      

  4.   

    在你的对话框中加入一个变量:
    CFont font1;在你的对话框中BOOL CMyTestDlg::OnInitDialog()
    font1.CreatePointFont(330,"Comic Sans MS"); //你喜欢的字体
        m_edtUserID.SetFont(&font1,true);就可以了!
      

  5.   

    改变窗口字体统一使用SetFont,以前没看到这个帖子:(