请问如何得到当前字体的字体高?谢谢

解决方案 »

  1.   

    方法
    BOOL CDC::GetTextMetrics(
    LPTEXTMETRIC lpMetrics )
    const; 参数说明
    typedef struct tagTEXTMETRICW {
     LONG tmHeight; 
     LONG tmAscent; 
     LONG tmDescent; 
     LONG tmInternalLeading; 
     LONG tmExternalLeading; 
     LONG tmAveCharWidth; 
     LONG tmMaxCharWidth; 
     LONG tmWeight; 
     LONG tmOverhang; 
     LONG tmDigitizedAspectX; 
     LONG tmDigitizedAspectY; 
     Wchar tmFirstChar; 
     Wchar tmLastChar; 
     Wchar tmDefaultChar; 
     Wchar tmBreakChar; 
     BYTE tmItalic; 
     BYTE tmUnderlined; 
     BYTE tmStruckOut; 
     BYTE tmPitchAndFamily; 
     BYTE tmCharSet; 
    } TEXTMETRIC, *PTEXTMETRICW, NEAR *NPTEXTMETRICW, FAR *LPTEXTMETRICW; 
    Members
    tmHeight 
    Specifies the height (ascent + descent) of characters. 
      

  2.   

    handwolf是来蒙人的吗?从MSDN上弄了段代码,直接就粘上了,怎么也不解释解释?自己懂吗?
      

  3.   

    CFont ft;
    ft.lfheight
    -------------
    这个不行有更加简单的代码吗handwolf的不董
      

  4.   

    void CCEditDlg::GetTextHeight(){
    CClientDC dc(this);
    TEXTMETRIC tm;
    dc.GetTextMetrics(&tm);
    LONG height = tm.tmHeight;
    CString strH ;
    strH.Format("Height = %d",height);
    MessageBox(strH);
    }
      

  5.   


    ...
    TEXTMETRIC  tm;
    UINT cy;
    pDC->GetTextMetrics(&tm);cy=tm.tmHeight; 
    ...//已经过测试win2k, vc6.0
      

  6.   

    这样好点:void CCEditDlg::GetTextHeight(){
    CDC *pDc = GetDC();    //获取cdc
    TEXTMETRIC tm;          //如handwolf所说的结构
    pDc->GetTextMetrics(&tm);
    LONG height = tm.tmHeight;
    CString strH ;
    strH.Format("Font Height = %d",height);
    MessageBox(strH);
    }