MFC程序字体太小

来源:互联网 发布:stzz什么意思网络用语 编辑:程序博客网 时间:2024/06/02 22:01

翻出来去年的笔记,暂存一下。


首先,这是一个MFC的Bug,解决时间暂时还不确定,临时的方案如下:

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);


原创粉丝点击