【发布时间】:2020-10-14 00:57:08
【问题描述】:
将 MFC 应用更改为每显示器 DPI 感知。在WM_DPICHANGED 消息中,我想更改 CMFCMenuBar 的字体以正确缩放。所以我补充说:
LOGFONT logfont;
GetGlobalData()->fontRegular.GetLogFont(&logfont);
logfont.lfHeight=g_DPIHelper.ScaleNonClientMetricsFont(logfont.lfHeight);
if (!m_wndMenuBar.SetMenuFont(&logfont)) {
TRACE0("Unable to set menu font\n");
}
我确认 logfont.lfHeight 在测试用例中从 -11 变为 -17。我确认SetMenuFont() 调用返回成功。然而,菜单栏上显示的CMFCMenuBar 字体与以前的大小相同。我错过了什么?
TIA!!
【问题讨论】:
-
您好,如果您自己解决了问题,可以Accept Your Own Answers
标签: winapi mfc menubar cmfctoolbar