http://download1.csdn.net/down3/20070517/17124624808.h模仿WTL的CDialogResize形式提供了一个字体控制,可以支持WTL和WinxGUI对话框程序。
DLGFONT_CONTROL/DLGFONT_CONTROL_EX :用在WTL中提供控的字体控制
DGFONT_DIALOG/DLGFONT_DIALOG_EX:在WTL中提供对话框全部字体的控制。
WINX_DLGFONT/WINX_DLGFONT_EX 用在WINX中提供控件字体控制支持
WINX_DLGFONT_DIALOG/WINX_DLGFONT_DIALOG_EX 用在WINX中提供对话框窗口全部控件字体的支持。
其中没有EX的控制宏提供字体大小和字体名的控制,带有EX的宏提供了字体全部格式的控制,我在WINX网站www.winxgui.cn的论坛上提供了FreeCode0.3,最新版本以VS60插件方式可视化的支持WINX上字体的完全控制.包括了FreeCode全部源代码,字体控制dlgfonts.h以及一个示例.
WTL中用法如下:
CMyDlg :
public
CDialogImpl
<
CMyDlg
>
,
public
CDialogFont
<
CMyDlg
>
... {
BEGIN_DLGFONT_MAP(CMDlg)
DLGFONT_DIALOG(16,"Arial")
DLGFONT_CONTROL(IDOK,24,"Arial")
END_DLGFONT_MAP()
OnInitDialog()
...{
DlgFont_Init();
}
} ;
... {
BEGIN_DLGFONT_MAP(CMDlg)
DLGFONT_DIALOG(16,"Arial")
DLGFONT_CONTROL(IDOK,24,"Arial")
END_DLGFONT_MAP()
OnInitDialog()
...{
DlgFont_Init();
}
} ;
WINX的用法如下:
//
winx simple
CMyDlg : public winx::ModalDialog < CMyDlg >
... {
WINX_DLGFONT_BEGIN()
WINX_DLGFONT_DIALOG(16,"Arial")
WINX_DLGFONT(IDOK,24,"Arial")
WINX_DLGFONT_END();
OnInitDialog()
...{
DlgFont_Init();
}
} ;
*/
CMyDlg : public winx::ModalDialog < CMyDlg >
... {
WINX_DLGFONT_BEGIN()
WINX_DLGFONT_DIALOG(16,"Arial")
WINX_DLGFONT(IDOK,24,"Arial")
WINX_DLGFONT_END();
OnInitDialog()
...{
DlgFont_Init();
}
} ;
*/
非EX格式控制,手工代码生成,可以与EX格式代码混用
WINX_DLGFONT_BEGIN()
WINX_DLGFONT(IDOK, - 21 ,_T( " 宋体 " ))
WINX_DLGFONT(IDC_SLIDER1, - 16_T( " 宋体 " ))
WINX_DLGFONT_DIALOG( - 16 ,_T( " 宋体 " ))
WINX_DLGFONT_END();
WINX_DLGFONT(IDOK, - 21 ,_T( " 宋体 " ))
WINX_DLGFONT(IDC_SLIDER1, - 16_T( " 宋体 " ))
WINX_DLGFONT_DIALOG( - 16 ,_T( " 宋体 " ))
WINX_DLGFONT_END();
带有EX格式控制.使用FreeCode自动生成。
WINX_DLGFONT_BEGIN()
WINX_DLGFONT_EX(IDOK, - 21 , 0 , 0 , 0 , 400 , 0 , 0 , 0 , 134 , 3 , 2 , 1 , 2 ,_T( " 宋体 " ))
WINX_DLGFONT_EX(IDC_SLIDER1, - 16 , 0 , 0 , 0 , 400 , 0 , 0 , 0 , 134 , 3 , 2 , 1 , 2 ,_T( " 宋体 " ))
WINX_DLGFONT_DIALOG_EX( - 16 , 0 , 0 , 0 , 400 , 0 , 0 , 0 , 134 , 3 , 2 , 1 , 2 ,_T( " 宋体 " ))
WINX_DLGFONT_END();
WINX_DLGFONT_EX(IDOK, - 21 , 0 , 0 , 0 , 400 , 0 , 0 , 0 , 134 , 3 , 2 , 1 , 2 ,_T( " 宋体 " ))
WINX_DLGFONT_EX(IDC_SLIDER1, - 16 , 0 , 0 , 0 , 400 , 0 , 0 , 0 , 134 , 3 , 2 , 1 , 2 ,_T( " 宋体 " ))
WINX_DLGFONT_DIALOG_EX( - 16 , 0 , 0 , 0 , 400 , 0 , 0 , 0 , 134 , 3 , 2 , 1 , 2 ,_T( " 宋体 " ))
WINX_DLGFONT_END();