gpt4 book ai didi

winapi - Win32下如何改变STATIC文本的颜色?

转载 作者:行者123 更新时间:2023-12-02 05:15:56 25 4
gpt4 key购买 nike

我在黑色窗口上有一些静态文本,我想在运行时使用“颜色选择器”对话框更改它。我已成功获得颜色,现在我只需要更改文字即可!我读过 WM_CTLCOLORSTATIC 消息是要处理的消息,尽管这似乎仅适用于最初将控件绘制到屏幕上的情况。可以使用 WM_PAINT 吗?

到目前为止我设置颜色的代码是(在 WM_CTLCOLORSTATIC 情况下):

if ((HWND)lParam == GetDlgItem(hWnd, uLabelId)
{
SetBkMode((HDC)wParam, TRANSPARENT);
SetTextColor((HDC)wParam, crLabelTextColour);
return (BOOL)CreateSolidBrush(GetSysColor(COLOR_MENU));
}

我在处理这个问题时可能完全走错了路,所以非常感谢任何帮助!

最佳答案

WM_CTLCOLORSTATIC 您走在正确的轨道上。如果要更改颜色,则使控件无效(可能使用 RedrawWindow )。这将导致它被重新粉刷。重新绘制时,您的 WM_CTLCOLORSTATIC 处理程序将再次调用。

关于winapi - Win32下如何改变STATIC文本的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14630760/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com