Qt鼠标悬浮Hover消息不触发,只有鼠标单击才会触发消息?

1.Qt鼠标悬浮Hover消息不触发,只有鼠标单击才会触发消息?

下面的工具配置,想要鼠标悬浮在工具菜单上时,显示删除的图标;但是发现怎么都触发不了

复制代码
 bool CBaseToolListWidget::eventFilter(QObject* ptr_object, QEvent* ptr_event)
    {
        if (this == ptr_object)
        {
            QEvent::Type event_type = ptr_event->type();
            switch (event_type)
            {
            //case QEvent::Enter:
            case QEvent::HoverEnter:
            case QEvent::Move:
            case QEvent::HoverMove:
            case QEvent::MouseMove:
            {
                DealMouseHover(Hover);
            }
                break;
            case QEvent::Leave:
            case QEvent::HoverLeave:
            case QEvent::DragLeave:
            {
                DealLeave();
            }
                break;
            case QEvent::MouseButtonDblClick:
            {
                if (isEnabled()) {
                    DealClick(ptr_event);
                }
            }
                break;
//             case QEvent::Show:
//             {
//                 DealHeight();
//             }
//                break;
            case QEvent::DragMove:
            {
                DealMouseHover(DragHover);
            }
                break;
            default:
                break;
            }

        }
        else if (ptr_default_label_ == ptr_object)
        {
            if (ptr_default_label_->isVisible())
            {
                QEvent::Type event_type = ptr_event->type();
                switch (event_type)
                {
                case QEvent::DragEnter:
                case QEvent::DragMove:
                {
                    ptr_default_label_->hide();
                }
                    break;
                case QEvent::DragLeave:
                {
                    DealLeave();
                }
                    break;
                default:
                    break;
                }
            }

        }

        return QListWidget::eventFilter(ptr_object, ptr_event);
    }
复制代码

 

2.解决办法

在构造函数中加入

installEventFilter(this);
setAttribute(Qt::WA_Hover, true);//这一行会使得鼠标悬浮时,触发悬浮消息,显示删除图标的问题;

 

posted @   一字千金  阅读(95)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
历史上的今天:
2021-12-19 如何发现股票变化的规律
2017-12-19 linux makefile字符串操作函数 替换subst、模式替换patsubst、去首尾空格strip、查找字符串findstring、过滤filter、反过滤filter-out、排序函数sort、取单词word、取单词串wordlist、个数统计words
点击右上角即可分享
微信分享提示