WM_CTLCOLORSTATIC lParam,C++ WINAPI

 书友57087250 发布于 2023-02-09 14:25

我正在尝试包含到我的对话窗口过程中,当收到msg WM_CTLCOLORSTATIC时,我得到正在发送消息的Control的ID.

case WM_CTLCOLORSTATIC: 
        UINT ID = GetWindowLong((HWND)lParam, GWL_ID);

问题是......当我尝试输入WM_CTLCOLORSTATIC的lParam时,它返回值65535,这是不正确的; 我甚至没有最大UINT ID为65535的资源项.

你能告诉我为什么会这样吗?

1 个回答
  • 你的问题不是很清楚,但我猜你有一个65535的ID,它是-1,这是静态控件ID的标准.

    如果您希望能够区分静态控件,请为它们指定不同的ID.

    如果您不关心其他静态控件的颜色,只需使用:

    if ( ID ==  IDC_RECT_CC_00 ) {
        [...]
    } else {
        // don't bother
    }
    

    2023-02-09 14:29 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有