现在的位置: 首页 > 综合 > 正文

VC对话框调整静态文本和编辑框等字体和大小

2018年01月31日 ⁄ 综合 ⁄ 共 1357字 ⁄ 字号 评论关闭

[解决方法]
    简单的步骤:在Windows中,每个窗体都有自己的字体。要改变其字体首先要CFont::CreateFont创建一个字体,然后用CWnd::SetFont选择此字体,赋给控件。具体的步骤:

1.在include的下面定义一个全局变量:

  CFont cfont;

2.把以下这一部分放到OnInitDialog()函数里面:
  cfont.CreateFont(16,        //字体大小

  0,0,0,FW_NORMAL,  
  FALSE,FALSE,  
  0,  
  ANSI_CHARSET,              // nCharSet
  OUT_DEFAULT_PRECIS,        // nOutPrecision
  CLIP_DEFAULT_PRECIS,       // nClipPrecision
  DEFAULT_QUALITY,           // nQuality
  DEFAULT_PITCH | FF_SWISS, "Arial");
CWnd*  pWnd = GetDlgItem(IDC_STATIC_TITLE);
pWnd->SetFont(&cfont);

 

下面介绍一下CreateFont函数的参数。 

    函数原型:
    BOOL   CreateFont(   int   nHeight,   int   nWidth,   int   nEscapement,   int   nOrientation,   int   nWeight,   BYTE   bItalic,   BYTE   bUnderline,   BYTE   cStrikeOut,
  BYTE   nCharSet,  BYTE   nOutPrecision,   BYTE   nClipPrecision,   BYTE   nQuality,   BYTE   nPitchAndFamily,  LPCTSTR   lpszFacename   );
   
    参数说明:
    nHeight:字体高度.> 0:字体的高度值;=0:字体采用缺省直. <0:此值的绝对值为高度.
    nWidth:字体宽度.
    nEscapement:文本行的倾斜度.
    nOrientation:字符基线的倾斜度.
    nWeight:字体的粗细,如下:
        .FW_DONTCARE
        .FW_THIN
        .FW_EXTRALIGHT
          .....
    bItalic:字体是否为斜体
    bUnderline:字体是否带下划线
    cStrikeOut:字体是否带删除线
    nCharSet:字体的字符集
        .ANSI_CHARSET
        .DEFAULT_CHARSET
        .SYMBOL_CHARSET
          ......
    nOutPrecision:字符的输出精度
    nClipPrecision:字符裁剪的精度
    nQuality:字符的输出质量
    nPitchAndFamily:字符间距和字体族(低位说明间距,高位说明字符族)
    lpszFacename:字体名称

抱歉!评论已关闭.