[英]Colored Checkbox, Group box and etc
我用这种方式着色静态标签:
case WM_CTLCOLORSTATIC:
{
DWORD CtrlID = GetDlgCtrlID((HWND)lParam); //Window Control ID
if(OptionColored)
{
HDC hdcStatic = (HDC) wParam;
SetTextColor(hdcStatic, RGB(255,255,255));
SetBkColor(hdcStatic, RGB(70,70,70));
return (INT_PTR)hBrush;
}
}
现在,我如何为复选框和组框着色?
编辑:当我尝试使用此代码更改颜色时,后台工作。 文字颜色没有。
尝试播放这些消息:
WM_CTLCOLORBTN
WM_CTLCOLOREDIT
WM_CTLCOLORDLG
WM_CTLCOLORLISTBOX
WM_CTLCOLORSCROLLBAR
WM_CTLCOLORSTATIC //You are already using
我知道您需要处理WM_CTLCOLORBTN
颜色复选框,
但不确定它是哪一个用于组合框。
它也适用于从CButton
继承的组合框
在您的代码中也注意到您正在检查( OptionColored
),不确定那是什么,但您需要检查消息是否针对您想要的控件颜色。
所以不需要检查if(OptionColored)
,你需要这样的东西:
DWORD CtrlID = GetDlgCtrlID((HWND)lParam));
if (CtrlID == IDC_STATIC1) //If desired control
{
//Color my STATIC CONTROLE
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.