作者:刘树伟
1. 无需对CFontDialog类进行派生。
2. 在你的VC安装目录的“Microsoft Visual Studio\VC98\Include”(VC6)下找到FONT.DLG,这是缺省的Font Dialog所用的模板,用文本编辑器将其打开,将其中的对话框资源定义部分拷贝粘贴至你自己应用程序工程的资源文件(*.rc)中。你会在资源编辑器里发现多了一个ID为1543的对话框,你可以更改这个对话框的ID为任何你喜欢的,譬如IDD_MYFONT。不要删除这个对话框中的任何控件,也不要更改任何控件的ID(这些ID在Include/DLGS.H中预定义),但是你可以按照自己的要求改变对话框的大小、重新布置控件,甚至可以将其visible属性去掉,使其不被显示。
3、在你需要显示Font Dialog的地方,作如下处理:
CFontDialog dlg;
dlg.m_cf.Flags |= CF_ENABLETEMPLATE;
dlg.m_cf.lpTemplateName = MAKEINTRESOURCE(IDD_MYFONT);
if (dlg.DoModal() == IDOK)
{
// Do something
}