VisualFC使用 - DialogFont(对话框字体设计)
来源:互联网 发布:大数据测试用例 编辑:程序博客网 时间:2024/05/08 14:53
VisualFC支持对话框的字体设计功能,通过在对话框程序中包括一个vfcfonts.h文件,配合VisualFC的WTL类向导就可以方便的为对话框中的控件进行字体设计。事例如下:
首先,新建一个WTL对话框应用程序,在使用资源编辑器编辑IDD_DIALOG,添加一个Static Text控件,将ID值由IDC_STATIC更改为IDC_VFC_STATIC,将Caption更改为VisualFC,然后拖动其边框到足够大小,再添加一个EDIT控件,将其属性设置为Multiline和Want return。启动VFC的WTL类向导,将Class Name切换为CMainDlg,选择WTL Font页面,其中上面窗口为控件列表,下面窗口为应用字体的控件列表,选中IDC_VFC_STATIC,点击Add Font按钮,将出现字体选择对话框,我们可以选择一个需要的字体并确认,然后再对IDC_EDIT的字体进行更改。最后按WTL类向导的确认按钮,将在CMainDlg中自动插入下列代码。
BEGIN_DLGFONT_MAP(CMainDlg)
DLGFONT_CONTROL_EX(IDC_EDIT1, -20,0,0,0,400,0,1,0,134,3,2,1,2,_T(""))
DLGFONT_CONTROL_EX(IDC_VFC_STATIC, -48,0,0,0,700,255,0,0,0,3,2,1,18,_T("Times New Roman"))
DLGFONT_CONTROL_EX(IDC_EDIT1, -20,0,0,0,400,0,1,0,134,3,2,1,2,_T(""))
DLGFONT_CONTROL_EX(IDC_VFC_STATIC, -48,0,0,0,700,255,0,0,0,3,2,1,18,_T("Times New Roman"))
END_DLGFONT_MAP()
然后我们手工加入所需头文件vfcfonts.h以及继承列表并在InitDialog中初始化字体控制。
#include <vfcfonts.h> //我们手工加入字体支持
class CMainDlg : public CDialogImpl<CMainDlg>, public CUpdateUI<CMainDlg>,
public CMessageFilter, public CIdleHandler,
public CDialogFont<CMainDlg> //我们手工加入字体支持继承类
...{
。。。
BEGIN_DLGFONT_MAP(CMainDlg)
DLGFONT_CONTROL_EX(IDC_EDIT1, -20,0,0,0,400,0,1,0,134,3,2,1,2,_T("宋体"))
DLGFONT_CONTROL_EX(IDC_VFC_STATIC, -48,0,0,0,700,255,0,0,0,3,2,1,18,_T("Times New Roman"))
END_DLGFONT_MAP()
。。。
LRESULT OnInitDialog(UINT /**//*uMsg*/, WPARAM /**//*wParam*/, LPARAM /**//*lParam*/, BOOL& /**//*bHandled*/)
...{
。。。。。
DlgFont_Init(); //我们手工加入对话框字体初始化支持
return TRUE;
}
}
class CMainDlg : public CDialogImpl<CMainDlg>, public CUpdateUI<CMainDlg>,
public CMessageFilter, public CIdleHandler,
public CDialogFont<CMainDlg> //我们手工加入字体支持继承类
...{
。。。
BEGIN_DLGFONT_MAP(CMainDlg)
DLGFONT_CONTROL_EX(IDC_EDIT1, -20,0,0,0,400,0,1,0,134,3,2,1,2,_T("宋体"))
DLGFONT_CONTROL_EX(IDC_VFC_STATIC, -48,0,0,0,700,255,0,0,0,3,2,1,18,_T("Times New Roman"))
END_DLGFONT_MAP()
。。。
LRESULT OnInitDialog(UINT /**//*uMsg*/, WPARAM /**//*wParam*/, LPARAM /**//*lParam*/, BOOL& /**//*bHandled*/)
...{
。。。。。
DlgFont_Init(); //我们手工加入对话框字体初始化支持
return TRUE;
}
}
好了,编译一下,我们可以看一下运行效果,如图:
VFC的WTL类向导上的WTL Font页面上除了Add Font外还有一个Add DlgFont,这是用来设置所有未使用Add Font处理过的控件的字体用的(即未加入BEGIN_DLGFONT_MAP内的控件),可以用来控制对话控件的基准字体。
备注:vfcfonts.h文件可以在VFC的下载包中找到。
- VisualFC使用 - DialogFont(对话框字体设计)
- VisualFC使用 - DialogResize(对话框调整)
- VisualFC使用 - UpdateUI
- 字体对话框使用实例
- 如何使用字体选择对话框
- 颜色、字体对话框使用实例
- VisualFC使用 - 处理WTL窗口消息
- VC++控件之使用字体对话框
- 文件、颜色、字体标准对话框使用
- 字体对话框
- GTK+ 消息对话框 属性对话框 字体选择对话框 颜色选择对话框 的使用例子
- 常用对话框:字体对话框
- VisualFC使用 - 内联函数选择,与原始代码保持一致
- PyQt5学习教程15:字体选择对话框的使用
- C# 字体对话框 & 颜色对话框
- 关于VisualFC
- VisualSVN VisualFC
- MFC设置对话框、字体对话框、颜色对话框
- 日本对俄罗斯和中国的外交政策反差为何如此之大
- 完美 解决 文件域只读(浏览按纽可用)
- ASP.NET的字符串处理 StringBuilder
- Want to be a computer scientist? Forget maths
- J2EE学习笔记四:开发第一个Session Bean
- VisualFC使用 - DialogFont(对话框字体设计)
- OpenGL模型视图变换,投影变换及视口变换
- C/C++语言误区之:void main( )
- 介绍什么是DMIPS- -
- DispatchAction的详细说明
- base64 编码
- Course Summarize
- DispatchAction样例
- 两分钟明白什么是ERP,超强推荐!