QT鼠标移动事件之菜单隐藏

本文介绍如何在Qt应用程序中实现菜单栏随鼠标移动显示和隐藏的功能。通过设置中央部件的鼠标跟踪属性,可以使得菜单栏在鼠标移至窗口顶部时出现,并在鼠标离开该区域时隐藏。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

折腾了半天终于把菜单隐藏弄好了,功能:鼠标移动到窗口上方菜单栏弹出,鼠标移出该区域菜单栏隐藏。

重载mouseMoveEvent ( QMouseEvent * m )并不能达到时时跟随鼠标的移动,只有在按键按下时拖动鼠标该函数才能执行,

在构造函数里添加代码:
this->setMouseTracking(true);  //跟踪鼠标
同样也不能解决问题,发现效果类似于leaveEvent()和enterEvent()事件,太奇怪了。
最后查资料添加代码:
this->centralWidget()->setMouseTracking(true);(在“跟踪鼠标”之前添加)
终于达到目的,觉得QT真的太奇怪了不理解。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值