搞了好久,也找了很多的资料,用了很多种方法,就是实现不了改变控件的背景颜色。终于,自己慢慢“研究”,实现了最后想要的结果。先贴上部分代码。
case WM_CREATE:
{
hTime = CreateWindow(TEXT("STATIC"), TEXT("Label"), WS_CHILD | WS_VISIBLE | WS_TABSTOP, 0, 30, 35, 16, hWindow, HMENU(20), m_hInstance, NULL);
rColor = RGB(255, 0, 0);
hbrush = CreateSolidBrush(rColor);//创建一个画刷
UpdateWindow(hWindow);
return 0;
}//创建一个控件(Label标签),text为Label,ID号指定为20。
case WM_CTLCOLORSTATIC:
{
int id = GetWindowLong((HWND)lparam, GWL_ID);
hdc = (HDC)wParam;
if (20 == id)
{
SetBkColor(hdc, rColor);
return (LONG)hbrush;//返回画刷后,系统就是自动根据现在的画刷来绘画想要的效果。
}
return 0;
}