请问除了处理OnCtlColor消息,还有什么方法能改变CEdit编辑框内的字体颜色吗?

解决方案 »

  1.   

    要方便的改变编辑框字体的颜色,就用CRichEdit控件啊,字体颜色和字体类型都可以方便的操作.
    long nStart, nEnd;
        m_edit.GetSel(nStart, nEnd); CColorDialog ColorDlg;
    ColorDlg.m_cc.Flags |= CC_RGBINIT;
    if (ColorDlg.DoModal() == IDCANCEL)
    return; m_color = ColorDlg.m_cc.rgbResult;
    CHARFORMAT cf;
    m_edit.GetSelectionCharFormat(cf);
    cf.dwMask = CFM_COLOR;
    cf.dwEffects &= ~CFE_AUTOCOLOR;
    cf.crTextColor = ColorDlg.m_cc.rgbResult;
    m_edit.SetSelectionCharFormat(cf);
      

  2.   

    你重写CEdit类,处理=WM_CTLCOLOR