SOUI官方论坛

 找回密码
 立即注册
查看: 261|回复: 0

记一次OnTimer引发的bug,控件点击无反应原来是消息被截获

[复制链接]
  • TA的每日心情
    开心
    前天 22:51
  • 签到天数: 946 天

    [LV.10]以坛为家III

    581

    主题

    1343

    帖子

    2万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    28876
    发表于 2022-10-17 16:41:53 | 显示全部楼层 |阅读模式
    第十四篇:在SOUI中使用定时器
    在宿主窗口的消息映射表中使用MSG_WM_TIMER来响应定时器消息。但是需要注意的是,这个映射宏会截获所有分发给宿主窗口的定时器,如果不是自己创建的定时器,则需要继续交给基类处理。
    可以调用:SetMsgHandled(FALSE); 或者:SHostWnd::OnTimer(UINT_PTR idEvent);实现。

    不管定时器有没有启动,只要使用OnTimer来处理消息,处理后请添加SetMsgHandled(FALSE);,否则消息无法继续传递了!

    我的问题是使用了SGoupList控件,点击group时,无法折叠,经@setoutsoft 启程软件提示后发现使用了OnTimer,而且还没有处理SetMsgHandled(FALSE);造成此问题,在此对@setoutsoft 丰富的经验表示佩服!


    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|小黑屋|SOUI官方论坛

    GMT+8, 2024-5-18 13:34

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表