Visual studio 2008/2010 MFC程序Menu、Toolbar字体偏小解决办法
2013-11-14 13:40
429 查看
转自http://www.blogjava.net/luchunwei/archive/2010/06/09/323118.html
首先,这是一个MFC的Bug
http://connect.microsoft.com/VisualStudio/feedback/details/505466/mfc-visual-style-font-size-too-small-to-display-chinese-character-clearly-on-windows-xp
解决时间暂时还不确定,临时的方案如下:
App在InitInstance中加入:
LOGFONT logfont = {0};
:: SystemParametersInfo(SPI_GETICONTITLELOGFONT, sizeof(LOGFONT), &logfont, 0);
afxGlobalData.SetMenuFont(&logfont,true);
注释:
字体的设置保存在一个全局变量afxGlobalData中,此变量定义AfxGlobals.h中。
AFX_GLOBAL_DATA中有一个SetMenuFont可以设定字体属性,影响Menu、Toolbar、Dock Pane等的caption字体。
但是这个设置对tooltip无影响,临时解决:在上面代码基础上在加入
if(afxGlobalData.fontTooltip.GetSafeHandle() != NULL)
{
::DeleteObject(afxGlobalData.fontTooltip.Detach());
}
afxGlobalData.fontTooltip.CreateFontIndirect(&logfont);
首先,这是一个MFC的Bug
http://connect.microsoft.com/VisualStudio/feedback/details/505466/mfc-visual-style-font-size-too-small-to-display-chinese-character-clearly-on-windows-xp
解决时间暂时还不确定,临时的方案如下:
App在InitInstance中加入:
LOGFONT logfont = {0};
:: SystemParametersInfo(SPI_GETICONTITLELOGFONT, sizeof(LOGFONT), &logfont, 0);
afxGlobalData.SetMenuFont(&logfont,true);
注释:
字体的设置保存在一个全局变量afxGlobalData中,此变量定义AfxGlobals.h中。
AFX_GLOBAL_DATA中有一个SetMenuFont可以设定字体属性,影响Menu、Toolbar、Dock Pane等的caption字体。
但是这个设置对tooltip无影响,临时解决:在上面代码基础上在加入
if(afxGlobalData.fontTooltip.GetSafeHandle() != NULL)
{
::DeleteObject(afxGlobalData.fontTooltip.Detach());
}
afxGlobalData.fontTooltip.CreateFontIndirect(&logfont);
相关文章推荐
- Visual studio 2008/2010 MFC程序Menu、Toolbar字体偏小解决办法
- Visual studio 2008/2010 MFC程序Menu、Toolbar字体模糊偏小解决办法
- Visual studio 2008/2010 MFC程序Menu、Toolbar字体模糊偏小解决办法
- VC 2010+MFC:CMFCToolBar和CMFCMenuBar的字体大小修改
- 关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法
- Visual Studio 2010 第一个C++程序成功之前遇到的问题及解决办法
- 关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法
- 关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法
- 关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法
- 关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法
- 关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法
- “Visual Studio 2008 + IE8下,为MFC工程对话框资源添加类时发生错误”问题的解决办法
- 关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法
- VC 2010+MFC:CMFCToolBar和CMFCMenuBar的字体大小修改
- Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法
- 关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法
- 关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法
- 关于使Visual Studio 2005/2008/2010开发的MFC程序具有XP风格的问题
- 关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法
- 关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法