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

📄 untitled-30.txt

📁 mfc 教程
💻 TXT
字号:
                                                                      第2章在窗口中绘图59
数减少了静态链接的程序代码,从而减小了可执行程序的大小。
    创建字体之后,把它选人设备描述表井调用DrawText、Textout和其他CDC文本函数,用
这种字体绘图。下面的0nPalnt处理程序在窗口的中部画了“He11。,MFC”。但是这次文本
是用72一点Anal字样画的,并带有阴影。(参见图2-9。)
      void CMainwindow:: onPaint()
      5
                CRect  rect;
            GetCI。entRect(&rect);
              CF0flt  foflt;
            font.CreatePointFont(720,T(”Anal”》;
            CPaintDC dc(this);
            dc.Selectobject(&上out);
            dc. SetBkMode( TRANSPARENT);
            CStrinu strino一一T(”Hello, MFC”);
            rect.offsetRect(16,16);
            dc.SetTextColor(RGB(192,192,192》;
            dc.DrawText(string,&rect, DT.SINGLELINE 
                  DT_CENTERI DT_VCENTER);
            rect.offsetRect(16,16);
            dc· SetTextColor( RGB( 0,  0,  0》;
            dc.DrawText(string,&rect,DT_SINGLELINE
                  DT_CENTERI DTVCENTER);
      g
    阴影效果是通过重画两次文本字符串实现的——一次画在从窗口中心向右、向下偏移
几个像素点的位置,一次画在窗口的中心位置。   MFC的  CRect:: offsetRect函数用这种将矩
形不断地在X和y方向上偏移一段指定距离的方法,很容易地“移动”了矩形。
    如果系统没有装 Times New Roman字样,但您又要创建 Times New Roman字体,这时会发
生些什么呢? GDI会选择系统中相近的字样,而不让这次调用失败。通过调用内部的宇体
映射算法,GDI选择出与原字样最相近的一个,因此结果往往不是用户所期望的。但至少您
的应用程序不会出现这种怪现象:在一个系统上可以正常输出文本,而在另一个系统上则
不可思议地没有任何输出。

⌨️ 快捷键说明

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