我创建了一个子窗口“ hwndTab”,并通过以下代码在其上设置了文本。在某些情况下,我需要为子窗口“ hwndTab”提供颜色。如果我使用带有Solidbrush颜色的FillRect,则该文本将被覆盖并且无法看到。我也不想使用system.dll和system.drawing.dll来制作透明的背景色。在这种情况下,是否可以为该子窗口“ hwndTab”着色,但仍可以看到文本?

win->hwndTab = CreateWindow(WC_STATIC, _T(""), WS_VISIBLE | WS_CHILD,
 0, 5, 62, 16, win->hwndReBarForTab, (HMENU)IDC_TOC_TITLE, ghinst, NULL);

SetWindowFont(win->hwndTab, gDefaultGuiFont, FALSE);

win::SetText(win->hwndTab, _T("Book"));

最佳答案

在用Solidbrush颜色填充FillRect之后,执行:: DrawText(...)或:: ExtTextOut(...)。不要使用SetText(...)。

关于c++ - 在彩色窗口上的文本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10210964/

10-11 16:16