小弟菜鸟,刚刚学VC,试图用一个线程控制EditControl中显示的内容,
是用SetWindowText改变EditControl中内容的
我想改变EditControl中字体的大小,使显示大一些,做了如下尝试
1,在属性里面查找,没有字体属性
2,在Dialog中找到字体属性,结果所以Dialog里面的控件都变大了,不和要求
3,在看到EditControl有SetFont方法,于是定义了一个Font font
    然后用
VERIFY(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
给它实例话,
然后调用m_EditCol(EditControl的控制变量)改变EditControl字体,
结果除了显示的资变粗了没有什么变化,同时发现改变的nHeight是EditControl的每行的高,如果很小的话那么显示字就不全,如果很大的话,显示的字不改变,就是变粗了
请问这个问题怎么做才是正解啊小弟拜谢!!!!!

解决方案 »

  1.   

    使用RichEdit或者使用成员变量的字体变量,然后使用SetFont!
      

  2.   

    如何改变控件的字体    由于控件是也是窗口,用户可以调用CWnd: : SetFont指定新字体。该函数用
    一个Cfont指针,要保证在控件撤消之前不能撤消字体对象。下例将下压按钮的字
    体改为8点Arial字体:
    //Declare font object in class declaration (.H file ).
    private :
        Cfont m_font ;
    // Set font in class implementation (.Cpp file ). Note m_wndButton is a
    //member variable added by ClassWizard.DDX routines hook the member
    //variable to a dialog button contrlo.
    BOOL CSampleDialog : : OnInitDialog ( )
    {    …    //Create an 8-point Arial font
        m_font . CreateFont  (MulDiv (8 , -pDC—> GetDeviceCaps  (LOGPIXELSY) , 72).
           0 , 0 , 0 , FW_NORMAL , 0 , 0, 0, ANSI_CHARSER, OUT_STROKE_PRECIS ,
           CLIP_STROKE _PRECIS , DRAFT _QUALITY
           VARIABLE_PITCH |FF_SWISS, _T ("Arial") );    //Set font for push button .
        m_wndButton . SetFont (&m _font );    …
    }
      

  3.   

    大哥,能不能说的详细点呢
    RichEdit属性里面也没有这个字体选项啊,顺便说一下,我用的是MFC对话框程序建立的项目
    成员变量的字体变量是什么啊
    我用了那个SetFont了啊,而且还是m_EditCol.SetFont();
    大小改变了,不过改变的是EditControl的,就是说当我该小的时候不是字变少了,而是显示少了一半