几天前,我订购了《 Programming Windows Fifth Edition》,并开始使用它。

我开始学习win32 api,但是我遇到了一个问题。 window 看起来根本没有现代的winxp/win vista/win 7风格。我该如何解决?

当前看起来像这样,胡扯的字体和所有。

提前致谢!

马基尔

最佳答案

要获得正确的字体,应在CreateWindow(Ex)之后调用:

NONCLIENTMETRICS ncm;
ncm.cbSize = sizeof(NONCLIENTMETRICS);
::SystemParametersInfo(SPI_GETNONCLIENTMETRICS, sizeof(NONCLIENTMETRICS), &ncm, 0);
HFONT hFont = ::CreateFontIndirect(&ncm.lfMessageFont);
::SendMessage(hwnd, WM_SETFONT, (WPARAM)hFont, MAKELPARAM(TRUE, 0));

08-17 04:12