我用VC生成了一个MDI程序,在生成时选择的是“英文字符集”然后我现在想将程序所有的字体都改成 “Arial”字体但是在 MainFrame及ChildFrame的OnCreate函数中,使用了SetFont函数,都没有用!只有针对某一个控件,如:这样写是有效的
m_wndToolBar.SetFont(&g_BigFont);
m_wndStatusBar.SetFont(&g_BigFont);但如果我这样写,是没有用的
BOOL CChildFrame::PreCreateWindow(CREATESTRUCT& cs)
{
    .......
    this->SetFont(&g_BigFont);
}
不知道有没有什么好的办法,可以通过一个配置,或者编译选项,一次性搞定!请高人指点!
分数不多,还请见谅

解决方案 »

  1.   


      //CFont Varible
      CFont m_fArial;
      //Create Arial Font
      m_fArial.CreateFont(14,0,0,0,FW_BOLD,FALSE,FALSE,FALSE,
                  DEFAULT_CHARSET,OUT_DEFAULT_PRECIS, 
                  CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,DEFAULT_PITCH,"Arial");
      //Get Pointer of ListCtrl
      CListCtrl *m_pList = (CListCtrl*)GetDlgItem(IDC_LIST1);
      //Set Font if (m_pList)
      m_pList->GetHeaderCtrl()->SetFont(&m_fArial);
    Good luck~
      

  2.   

     CFont * f;
     f = new CFont;
     f->CreateFont(12,                        // nHeight
       0,                         // nWidth
       0,                         // nEscapement
       0,                         // nOrientation
       FW_DONTCARE,                 // 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
       _T("ËÎÌå"));                 // lpszFac
    通过该指针可以修改所有你想要修改控件的字体,包括窗口