复选框更改文本颜色 [英] Checkbox change the text color
本文介绍了复选框更改文本颜色的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
背景改变了,但文本颜色没有改变.这是我的代码:
The background changed, but the text color not. here my code:
case WM_CTLCOLORSTATIC:
{
DWORD CtrlID = GetDlgCtrlID((HWND)lParam); //Window Control ID
if(CtrlID == IDC_CHECK_CHAT)
{
HDC hdcStatic = (HDC) wParam;
SetTextColor(hdcStatic, RGB(255,255,255));
SetBkColor(hdcStatic, RGB(70,70,70));
return (INT_PTR)hBrush;
}
}
资源文件:
CONTROL "Blah Blah Blah",IDC_CHECK_CHAT,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,24,72,137,10
推荐答案
你需要先用SetWindowTheme移除主题:
You need to first remove theme with SetWindowTheme:
HWND hwndCheckbox = GetDlgItem(_hdlg, IDC_CHECK_CHAT);
SetWindowTheme(hwndCheckbox, L"wstr", L"wstr");
在您可以为文本着色之前.
before you could color the text.
这篇关于复选框更改文本颜色的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文