见笑了:如何更改编辑控件中显示字体的大小?
解决方案 »
- 请教:关于CString类型遇到的一个邪门问题....
- 谁知道让vc的显示界面实现动态变化啊
- 帮忙看看我的程序。非常感谢
- 如何得到对话框中picture静态控件的矩形大小啊?
- 如何设置控件颜色
- 我做一个供其他程序调用的DLL文件,加入一个对话框行吗?急!!!
- 求救:关于数据库多表联合查询的问题,请高手帮帮忙,看能不能解决一下。
- 新手问题。
- 音频流合成问题,希望高手解答
- 请问:使用CWMPMedia::GetDuration返回值为0,应该如何使用?
- 请问如何检测到程序的异常中断(比如被TerminateProcess)
- 怪事:CryptAcquireContext(&hProv,NULL,NULL,PROV_RSA_FULL,0)返回错误代码:2,这时候咋会是这个错误???
应该在视类中定义一个数据成员CFont m_Font,再在视类的OnCreate()中加入字体创建代码:
// Warning: m_font 应该在视类中定义。
// 初始化字体
LOGFONT lf; // Used to create the CFont. memset(&lf, 0, sizeof(LOGFONT)); // Clear out structure.
lf.lfHeight = 90; // Request a 90-pixel-high font
strcpy(lf.lfFaceName, "隶书"); // with face name
m_font.CreateFontIndirect(&lf); // Create the font.
this->SetFont(&m_font,TRUE);更改字体:
static CFont font;
font.CreatePointFont(90, "宋体"); //此外90不同于lf.lfHeight中的90,此处代表9磅,12像素字体,小五或六号字。
this->SetFont(&font); //也可以用控件变量名替代this,以更改控件字体
然后可以再增加一个SetFont命令:
SetFont()
{
LOGFONT lf;
memset(&lf,0,sizeof(LOGFONT));//将lf结构清零
m_Font.GetLogFont(&lf); //m_Font已在视类中定义;
CFontDialog dlg(&lf); if (dlg.DoModal()==IDOK)
{
dlg.GetCurrentFont(&lf);
m_Font.CreatFontIndirect(&lf);
SendMessage(WM_SETFONT,(WPARAM)(HFONT)m_Font);
}
}