我在EditView中的OnInitUpdate中这样设置字体,怎么不成功啊
CFont font; if(!(font.CreateFont(0,0,0,0,FW_NORMAL,FALSE,FALSE,FALSE,
GB2312_CHARSET,OUT_TT_PRECIS,CLIP_TT_ALWAYS,
DEFAULT_QUALITY,DEFAULT_PITCH,"Fixedsys")))
{
font.CreateStockObject(SYSTEM_FONT);
}
SetFont(&font,1);

解决方案 »

  1.   

    CFont m_font1;//
        LOGFONT logFont;//?
        ZeroMemory((void*)&logFont,sizeof(logFont));//初始化
        strcpy(logFont.lfFaceName,"宋体");
        logFont.lfHeight = 15;
        logFont.lfWeight = 15;
        logFont.lfCharSet = GB2312_CHARSET;
        logFont.lfOutPrecision = 3;
        logFont.lfClipPrecision = 2; 
        logFont.lfQuality = 1;
        logFont.lfPitchAndFamily = 2;
        m_font1.CreateFontIndirect(&logFont);
    pDC->SelectObject(&m_font1);
    pDC->SetBkMode(TRANSPARENT);
    pDC->SetTextColor(RGB(0,0,0));
      

  2.   

    mengqimxz(*雨*) 你那个不行吧,因为我用的是EditView哎
      

  3.   

    对不起,我没有注意看你的基类是EditView.那我也不知道了,没有用过用EditView.
      

  4.   

    CEdit &edit=this->GetEditCtrl();//如果是richeditview就是getricheditctrl()
             edit.SetFont(字体变量);
      

  5.   

    fanqing(火影忍者) ,用你那个我也做过了,也没有成功,郁闷
      

  6.   

    可能有两个原因
    1. 你字体创建的不对,用mengqimxz(*雨*) 的创font的那段代码试试;
    2. 把你的CFont变量设成类成员变量
      

  7.   

    nt CddView::OnCreate(LPCREATESTRUCT lpCreateStruct)
    {
    if (CEditView::OnCreate(lpCreateStruct) == -1)
    return -1; font.CreateFont(
       12,                        // nHeight
       0,                         // nWidth
       0,                         // nEscapement
       0,                         // nOrientation
       FW_NORMAL,                 // nWeight
       FALSE,                     // bItalic
       FALSE,                     // bUnderline
       0,                         // cStrikeOut
       ANSI_CHARSET,              // nCharSet
       OUT_DEFAULT_PRECIS,        // nOutPrecision
       CLIP_DEFAULT_PRECIS,       // nClipPrecision
       DEFAULT_QUALITY,           // nQuality
       DEFAULT_PITCH | FF_SWISS,  // nPitchAndFamily
       "Arial");                 // lpszFacename CEdit &edit=this->GetEditCtrl();
             edit.SetFont(&font,1); return 0;
    }我测试过了vc2003