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