void CSquaredUpView::OnTextfont()
{


if( m_fontDlg.DoModal()==IDOK )
{
LOGFONT   lf;
m_fontDlg.GetCurrentFont(&lf);
m_TextFont.DeleteObject();
m_TextFont.CreateFontIndirect( &lf );
Invalidate();
}
}m_fontDlg    通用字体对话框对象( CFontDialog )
m_TextFont   文本字体类类 ( CFont )这两个对象在视图类中定义
我想通过通用字体对话框的设置来改本文本的字体,但是设置了字体颜色(比如说设置成红色),但是文本的颜色还是不变。小弟初学VC,不太会调试程序。请高人指点迷经!!!

解决方案 »

  1.   

    好像没选进去
    SelectObject()
      

  2.   

    void CSquaredUpView::OnDraw(CDC *pDC)
    {
    CSquaredUpDoc* pDoc = GetDocument();
    ASSERT_VALID(pDoc);
    if (!pDoc)
    return;

    // TODO: 在此处为本机数据添加绘制代码
    CFont *pOldFont = pDC->SelectObject( &m_TextFont );
    pDC->TextOutW( 0,0,_T("ttttt"));
    pDC->SelectObject( pOldFont );
    }
      

  3.   

    CFont *pOldFont = pDC->SelectObject( &m_TextFont );
    pDC->SetTextColor(RGB(255, 0, 0));
    pDC->TextOutW( 0,0,_T("ttttt"));
    pDC->SelectObject( pOldFont );