我在VC++内弹出字体对话框,我怎样江对话框中我所设置的应用于
显示的字体?用什么类型的变量或指针,请指教

解决方案 »

  1.   

    CFont* m_font;
    CFontDialog dlg;
    if(dlg.DoModal()==IDOK)
    {
    m_font=GetFont();
    CClientDC dc(this);
    dc.SelectObject(&m_font);}
      

  2.   

    CFont* m_font;
    CFontDialog dlg;
    if(dlg.DoModal()==IDOK)
    {
    m_font=GetFont();
    CClientDC dc(this);
    dc.SelectObject(&m_font);}
      

  3.   

    不行,能详细一点么,我在onDraw()中可以么?
      

  4.   

    //这样做可以了,我测试过了,上面的方法确实不行.
    CFontDialog dlg;
    if(dlg.DoModal()==IDOK)
    {
    LOGFONT logFont;
    CFont m_font;
    ZeroMemory((void*)&logFont,sizeof(logFont));
    strcpy(logFont.lfFaceName,dlg.GetFaceName());

    logFont.lfCharSet = GB2312_CHARSET;
    logFont.lfHeight=dlg.GetSize();
    m_font.CreateFontIndirect(&logFont);
    //m_static 是一个static的控制变量
    m_static.SetFocus();
    m_static.SetFont(&m_font);
    }
      

  5.   

    还是不 行,如果要改变在view内的字体如何做?在对黄框中的字体如何做?
    上面的方法只能改变粗体与否,有人解决了,马上结帖,在线等
      

  6.   

    CFontDialog font;
    if(font.DoModal() == IDOK)
    {
       LOGFONT lf;
       font.GetCurrentFont(&lf);
    }在OnDraw中将该字体选中:
    CFont Font;
    Font.CreateFontIndirect(&lf);
    CFont *pOldFont = pDC->SelectObject(&Font);
    pDC->TextOut(......)
    ......
    pDC->SelectObject(pOldFont);
      

  7.   

    error C2065: 'lf' : undeclared identifier???????????????