MFC编程参考.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MFC编程参考

MFC编程参考 0.文字输出 为了能选用不同的字体和大小来输出文本串,须使用作为GDI对象的CFont类。Windows和常用的字处理软件(如Word)、绘图软件(如CorelDraw)等应用软件会提供多种与设备无关的字体,主要是TrueType轮廓字体。 1)创建字体函数 CFont类是CGDIObject的派生类:CObject → CGDIObject → CFont。只有一个缺省构造函数CFont( ); 必须用下列字体创建成员函数CreateFont[Indirect]或CreatePointFont [Indirect]来初始化。 其中的CreatePointFont提供了创建字体的一种简单方法: BOOL CreatePointFont( int nPointSize, LPCTSTR lpszFaceName, CDC* pDC = NULL ); nPointSize为字体的大小,以0.1点(像素/墨点/磅数)为单位,如汉字的字号与nPointSize值及磅数的对应关系见下表: 汉字字号 nPointSize值 磅数 汉字字号 nPointSize值 磅数 初号 420 42 四号 140 14 小初 360 36 小四 120 12 一号 260 26 五号 105 10.5 小一 240 24 小五 90 9 二号 220 22 六号 75 7.5 小二 180 18 小六 65 6.5 三号 160 16 七号 55 5.5 小三 150 15 八号 50 5 lpszFaceName为字体名称字符串的指针 若pDC非空,则系统会将设备单位点自动转换为pDC中的映射模式所指定的逻辑单位 如 CFont font; font.CreatePointFont(160, “宋体”); 注意:CFont类的这些逻辑字体创建函数,并不是从无到有创建一个新的GDI字体,而只是从GDI的物理字体库中选择与所设置参数最匹配的字体。 2)字体公用对话框 为了方便用户选择各种字体参数,可使用字体公用对话框: 汉字的字号与磅数 字体公用对话框 使用字体公用对话框需要用到CFontDialog类。CFontDialog类的构造函数为 CFontDialog( LPLOGFONT lplfInitial = NULL, DWORD dwFlags = CF_EFFECTS | CF_SCREENFONTS, CDC* pdcPrinter = NULL, CWnd* pParentWnd = NULL ); 其中,lplfInitial为逻辑字体结构的指针(可用CFont的成员函数GetLogFont来获得,参见《Windows程序设计》),dwFlags为对话框的可选参数,CF_EFFECTS表示对话框中有删除线和下划线复选框与选择颜色的下拉式组合框,CF_SCREENFONTS则使得对话框中只列出系统支持的显示字体。CFontDialog类的常用成员函数有: virtual int DoModal( ); // 显示对话框,返回IDOK或IDCANCEL CString GetFaceName( ) const; // 返回字体名称串 int GetSize( ) const; // 返回所选择的字体大小,以0.1点为单位 COLORREF GetColor( ) const; // 返回所选择的字体颜色 3)文本输出函数 常用的文本输出函数有TextOut、DrawText和ExtTextOut,它们都是CDC类的成员函数。下面只介绍最简单的TextOut: BOOL TextOut( int x, int y, const CString str ); 其中,x与y为显示串的左上角坐标,str为要显示的文本串。如: pDC-TextOut(10, 10, LTest text); 还可以使用CDC类的成员函数SetTextColor和SetBkColor来分别设置输出文本的前景色和背景色:(缺省的前景色为黑色,背景色空) virtual COLORREF SetTextColor( COLORREF crColor ); virtual COLORREF SetBkColor( COLORREF crColor ); 如: pDC-SetTextColor(RGB(0, 128, 0)); pDC-TextOut(10, 30, LTest text); pDC-SetBkColor(RGB(0, 0, 128)); pDC-TextOut(10, 50, LTest text); 4)例子 创建名为Font的MFC单文档应用程序,在视图类中添加若干字体参数类变量: CFont font;

文档评论(0)

almm118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档