WTL字体类

前言

使用这个类可以很容易在窗口或对话框中加入各种额外的字体。我们可以通过CWindowFont类建立一个基于当前窗口的新字体。你所要做的就是设置字体属性(加重、斜体等),来美化你的程序。例如,在程序中一个使用加重字体的静态控件。

在WTL对话框中使用该类,只需简单地进行如下操作。首先加入头文件:

#include "windowfont.h"

然后,为每一个待创建的字体加入一个CWindowsFont成员变量。

...
CWindowFont m_fontBold;

然后,在对话框中的OnInitDialog函数中, 直接在对话框中的控件上应用新字体风格。

// 建立字体,应用在静态控件 IDC_TEXT 上
m_fontBold.Apply(m_hWnd, CWindowFont::typeBold, IDC_TEXT);

调用Create函数创建字体,调用控件的SetFont函数。

//建立加重字体
if (m_fontBold.Create(m_hWnd, CWindowFont::typeBold))
  GetDlgItem(IDC_TEXT).SetFont(m_fontBold);

非常简单!通常,我在每个程序的关于框内使用这个类去显示程序的版本信息。如图一所示。另外我还常在向导首页上使用该类来建立两倍高度的字体,以美化窗口外观。


图一

时间: 2024-08-31 15:23:43

WTL字体类的相关文章

MFC程序员WTL指南(3)WTL界面基类

对第二部分的介绍 好了,现在正式开始介绍WTL!在这一部分我讲的内容包括生成一个基本的主窗口和WTL提供的一些友好的改进,比如UI界面的更新(如菜单上的选择标记)和更好的消息映射机制.为了更好地掌握本章的内容,你应该安装WTL并将WTL库的头文件目录添加到VC的搜索目录中,还要将WTL的应用程序生成向导复制到正确的位置.WTL的发布版本中有文档具体介绍如何做这些设置,如果遇到困难可以查看这些文档. WTL 总体印象 WTL的类大致可以分为几种类型: 主框架窗口的实现- CFrameWindowI

J2ME 2D小游戏入门之旅(二)完善周边工具类

二.完善周边工具类(图象.GameObject.Font) 虽然我们有了midp2.0的支持,但是有时还是需要一些辅助工具,方便我们使用.这怕是在进行真正的游戏设计之前最有趣的了. 1,首先是一个ImageTools工具类,提供一个方法帮助调用Imagepublic class ImageTools { protected ImageTools() { } public static Image getImage(String str){ Image img=null; try { img =

在J2ME手机编程中使用字体

编程 在J2ME手机编程中,可以通过使用字体类--Font在低级用户界面中,获得更好的表现效果,那么如何使用Font类呢?       首先,由于手机设备的限制,手机中支持的字体类型很有限,所以在J2ME中只能使用手机支持的默认字体来构造Font类对象.下面是创建Font类的对象时使用的方法:        getFont(int face,int style,int size);     例如:         Font font = Font.getFont(Font.FACE_SYSTEM

VC++.NET中使用GDI+创建特效字体

来自于微软.NET技术的C++托管扩展所包含的GDI+技术功能十分强大,本文将介绍如何使用GDI+的画刷来绘制文本. 一.使用画刷绘制文本的基本技术 本文所带的例子程序允许用户定义所要显示的文本.字体尺寸.显示文本所用的画刷(网格画刷或渐变画刷)以及绘制文本的颜色等.例子代码下载:GDIPlusTextWithBrushes.zip 下面是GDI+中使用渐变画刷或网格画刷绘制文本的基本步骤: 1.在控件的绘制(Paint)事件中添加一个事件处理函数. 在这个处理函数中进行绘制文本的相关处理,这样

在J2ME手机编程中使用字体和颜色

使用字体 在J2ME手机编程中,可以通过使用字体类--Font在低级用户界面中,获得更好的表现效果,那么如何使用Font类呢? 首先,由于手机设备的限制,手机中支持的字体类型很有限,所以在J2ME中只能使用手机支持的默认字体来构造Font类对象.下面是创建Font类的对象时使用的方法: getFont(int face,int style,int size); 例如: Font font = Font.getFont(Font.FACE_SYSTEM,Font.STYLE_BOLD,Font.

Android字体Font相关知识

Android字体简介 Android系统默认支持三种字体,分别为:"sans","serif","monospace". android.graphic.typeface字体类: 本类的常量静态定义,首先为字体类型(typeface)名称 TypefaceDEFAULTTypeface DEFAULT_BOLDTypeface MONOSPACETypefaceSANS_SERIFTypeface SERIF 字体风格(style)名称 int

java实现仿windows 字体设置选项卡实例_java

想用java做一个像windows里一样的txt编辑软件,涉及到字体设置选项卡,在网上找了很久都没找到,就生气啦自己写一个,现在贴这里分享一下,下次再遇到这样的问题就不用自己亲自打代码啦! package 实验; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt

简单文本编辑器

v一.前言 聚天地之灵气,集日月之精华!一个简单的java文本编辑器由此而生.毕设所需,很是无奈! v二.界面预览      v三.实现思路 v 1.字体选择器的实现 (1).字体类 class MyFont{ private Font font; private Color color; public Font getFont() { return font; } public void setFont(Font font) { this.font = font; } public Color

Skia深入分析5——skia文字绘制的实现

文字绘制主要包括编码转换(主要是中文).字形解析(点线或image)和实际渲染三个步骤.在这个过程中,字形解析和实际渲染均是耗时步骤.Skia对文字解析的结果做了一套缓存机制.在中文字较多,使用多种字体,绘制的样式(粗/斜体)有变化时,这个缓存会变得很大,因此Skia文字缓存做了内存上的限制. 1.SkPaint 文字绘制与SkPaint的属性相关很大,先回头看下SkPaint相关的属性 class SkPaint { private SkTypeface* fTypeface;//字体 SkP