若使用CColorDialog 选定了颜色,怎么将颜色运用到Edit控件中的文本?

解决方案 »

  1.   

    CColorDialog得到的颜色,用SetTextColor()可改变Edit控件的文本。
    下面是如何得到CColorDialog得到的颜色。
    CColorDialog dlg(m_color);
    if(dlg.DoModal() == IDOK){
    m_color = dlg.GetColor();
    }
      

  2.   

    COLORREF m_color;

    CColorDialog dlg(m_color);
    if(dlg.DoModal() == IDOK){
    m_color = dlg.GetColor();
    }
    上面代码经过调试
      

  3.   

    得到color后
    在OnCtlColor中加入如下代码 
    HBRUSH CXXX::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
    {
    HBRUSH hbr = CBitmapDialog::OnCtlColor(pDC, pWnd, nCtlColor);
      pDC->SetBkMode(0);
    pDC->SetTextColor(color));//color为你选择的颜色
    如果只要CEdit,就可以根据pWnd的类名来判断
      return hbr;
    }