⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 untitled-29.txt

📁 mfc 教程
💻 TXT
字号:
    58 MFC Windows程序设计(第2版)
构造了CF0nt对象之后,就可以通过调用CFont对象的CreateF0nt、CreateFontlndi。ct、Create-
PointFont或CreatePointFontlndirect函数创建带下划线的GDI字体了。如果想以像素为单位
指定字体尺寸,则调用   CreateFont或  CreateFontlndirect;如果想以点为单位指定字体尺寸,则
调用 C。atePointF0nt和 CreatePointFontlndirect。用 C。atePointFont函数创建 12一点屏幕字体只
需要两行程序代码:
        CFontZout;
      rout.CreatePolntFont(120,T(”Tunes New Roman”》;
而使用CreateFont函数则需要向设备描述表查询垂直方向上每英寸内像素的逻辑个数,并把
点转换为像素:
      CClientDC dc(this);
      。ntnHe。ght=-《dc.GetDev。ceCaps(LOGPIXELSY)。 12)/72);
        CFont font;
      font.CreateFont("Height, 0, 0, 0, FWNORMAL, O, O, O,
              DEFAULT.CHARSET, OUT.CHARACTER.pRECIS, CLIp.CHARACTEfupRECIS,
              DEFAULT_QUALITY, DEFAULT.PITCHIFF.DONTCARE,
            .m(”m。mes wew n。。an’v;
    顺便提一下,传递给Cre。tePointFont的数值是你所期望的点的大小的Ic倍。这样字体
尺寸就可以控制到点的1/10,考虑到大部分屏幕和其他常见输出设备相对较低的分辨率,
对于大多数应用场合,这个精度已经足够用了。
    传递给CreateFont的诸多参数之中,有确定字的粗细度和字符是否倾斜的参数。您不能
用C。atePointFont创建一个粗黑、倾斜的宇体,但用CreatePointFontlndirect.就能达到目的了。
下面的程序代码用 CreatePointFontlndirect创建了一个 12一点、粗黑、倾斜的 Times New Ro。n
字体:
        LOGFONTIf;
      ..ZeroMemory(&If, s。zeo上(If》;
      If.上fHeight= 12O;
      If.lfweight= FW.BOLD;
        If.lfltdllC。TRUE;
      ::1。trcpy(If.上fFaceNa。e,_T(”T。mes New Roman”》;
        CFont font 2
      font.CreatePointFontlndlrect(&If);
    LOGFONT是一个结构,它的字段定义了字体的所有特性。:: fferoMemory是一个 API函
数,它将一块内存清零。:: lstrcPy也是一个 API函数,它将一个文本字符串从一个内存位置
复制到另一个位置。您也可以用运行时的C函数memset和st。py代替(实际上,应该调用
一to。cpy向个是 strcpy,这样就能处理ANSI或 Unicode字符了),但是经常调用 Windows API函

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -