我正在尝试包含到我的对话窗口过程中,当收到msg WM_CTLCOLORSTATIC时,我得到正在发送消息的Control的ID。
case WM_CTLCOLORSTATIC:
UINT ID = GetWindowLong((HWND)lParam, GWL_ID);
问题是......当我尝试输入WM_CTLCOLORSTATIC的lParam时,它返回值65535,这是不正确的;我甚至没有最大UINT ID为65535的资源项。
你能否告诉我为什么会这样?
答案 0 :(得分:5)
您的问题不是很明确,但我猜您的ID为65535,即-1,这是静态控件ID的标准。
如果您希望能够区分静态控件,请为它们指定不同的ID。
如果您不关心其他静电控制的颜色,请使用:
if ( ID == IDC_RECT_CC_00 ) {
[...]
} else {
// don't bother
}