首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CListCtrl鼠标事件无法工作

CListCtrl鼠标事件无法工作
EN

Stack Overflow用户
提问于 2015-06-26 11:32:05
回答 1查看 291关注 0票数 0

我有一个CListCtrl在一个CDialog。而且大多数事件都没有被CListCtrl所调用。例如,当我的鼠标指针在CListCtrl上时,CListCtrl不会被调用,但是如果鼠标指针在窗口或编辑控制上,则会起作用。

注意:我的CListCtrl设置为Report视图。

有人能解释一下这种行为吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-10 01:34:07

我刚刚遇到了类似的症状,(在我的名字下,"MFC CListCtrl不出现在最小化恢复“这一问题中)。我发现,正如你所做的那样,许多信息没有出现在你认为应该出现的地方,有些则根本没有出现。其他人也发现了同样的东西。我通过创建自己的类(从CListCtrl继承并只是重写OnNotify(.)来解决这个问题。然后,我发现我收到了信息,只困在我想要的,并修改了行为,以适应我自己的班级。(我只是在防止调整列宽的大小。)在我的情况下不需要其他代码。

代码语言:javascript
复制
BOOL CCompilationListCtrl::OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult)
{
    HD_NOTIFY *pHDN = (HD_NOTIFY*)lParam;
    {
        if(pHDN->hdr.code == HDN_BEGINTRACKW || pHDN->hdr.code == HDN_BEGINTRACKA)
        {
            *pResult = TRUE;
            return TRUE;
        }
        if(pHDN->hdr.code == HDN_ENDTRACKW || pHDN->hdr.code == HDN_ENDTRACKA)
        {
            *pResult = TRUE;
            return TRUE;
        }
        if(pHDN->hdr.code == HDN_DIVIDERDBLCLICKW || pHDN->hdr.code == HDN_DIVIDERDBLCLICKA)
        {
            *pResult = TRUE;
            return TRUE;
        }
    }
    return CListCtrl::OnNotify(wParam, lParam, pResult);
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31072132

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档