CFontDialog dlg(&lf, CF_SCREENFONTS|CF_INITTOLOGFONTSTRUCT);
我想写几行代码等于它,CFontDialog dlg;
dlg.getcurrentfont(&lf);
下面的搞不好了,
为什么要CFontDialog dlg(&lf, CF_SCREENFONTS|CF_INITTOLOGFONTSTRUCT);用呢,是调用构造函数吗,我找了一下的,不是很明白。高手们能说明一下吗?

解决方案 »

  1.   

    CFontDialog 构造函数原型CFontDialog( LPLOGFONT lplfInitial = NULL, DWORD dwFlags = CF_EFFECTS | CF_SCREENFONTS, CDC* pdcPrinter = NULL, CWnd* pParentWnd = NULL );-------------
    初始的选择的字体也可以在 m_cf 中给出
    CFontDialog dlg;
    dlg.m_cf //你的初始字体
    dlg.getcurrentfont(&lf);
      

  2.   

    就是构造函数。具体参数可以查MSDN啊!
      

  3.   

    高手,我怎么会用msdn的,我查了一下的。还是dlg.m_cf与CF_SCREENFONTS|CF_INITTOLOGFONTSTRUCT怎么来联系的,dlg.m_cf=CF_SCREENFONTS|CF_INITTOLOGFONTSTRUCT吗?
      

  4.   

    那是一个结构体,里面可以包含很多信息
    下面的东西 copy form msdntypedef struct { 
      DWORD        lStructSize; 
      HWND         hwndOwner; 
      HDC          hDC; 
      LPLOGFONT    lpLogFont; 
      INT          iPointSize; 
      DWORD        Flags;    // 这个应该是你要的
      COLORREF     rgbColors; 
      LPARAM       lCustData; 
      LPCFHOOKPROC lpfnHook; 
      LPCTSTR      lpTemplateName; 
      HINSTANCE    hInstance; 
      LPTSTR       lpszStyle; 
      WORD         nFontType; 
      WORD         ___MISSING_ALIGNMENT__; 
      INT          nSizeMin; 
      INT          nSizeMax; 
    } CHOOSEFONT, *LPCHOOSEFONT;