QT Mainwindow下指定控件的setMouseTracking(true)和mousemoveevent函数失效-问题解决
创始人
2024-09-25 07:28:50
0次

目录:

  • 一,问题描述
  • 二,解决方法
    • 2.1解决依据
    • 2.2方法实操
  • 三,参考资料

一,问题描述

☀️之前碰到过的一个问题,现在分享出来:想在qt哪里搞个鼠标移动在控件显示的图片上,然后实时显示对应位置的像素值的demo,但是遇到了小问题,比如我已经在初始的时候,已经将对应控件setMouseTracking(true)调用了,但还是对应的控件mousemove事件响应方法还是使用不了,需要边点击边移动鼠标才行(press 和move同时执行才行),与熟悉的c# 的界面类别消息机制不同,对于qt ,特别是mainwindow情况下,编写对应的事件方法要尤为注意一些小细节,比如像今天遇到的问题。

  • 本文想表达的是,一些成败细节的方法往往是点睛之笔!
  • maindown方式不好用,建议用widget窗口!

二,解决方法

2.1解决依据

  • 1️⃣之所以,只调用对应控件的setMouseTracking(true)或同时也调用ui的setMouseTracking(true)也没用,因为在mainwindow情况下,而且你可能重写mainwindow的鼠标响应事件;
  • 2️⃣最重要的一点,在mainwindow中,如果想要处于其中的某个控件也同时拥有完整的事件响应,必须将从控件到主窗口的每一级的父对象都依次调用setMouseTracking(true)函数;
  • 3️⃣另外,你自己编写的事件响应函数确保没问题,程序其他地方也没问题!

2.2方法实操

1️⃣如果知道对应控件的每一级父对象呢?我们可以在qt设计器中,看到程序或窗体中每个控件的级联和包含关系,可以以此来对控件的各个父对象调用setMouseTracking(true)方法,如下:
在这里插入图片描述

2️⃣另外,除了上面可以显示比较明显的包含关系,但上面还不够,因为对于特殊的控件,他有可能还有别的父对象,我们可以在qdebug用对象.parent.objectname输出对应的信息,寻花问柳出来😄
对于一些特殊控件,比如qtabwidget控件的某一项tab页,他的父对象竟然叫"qt_tabwidget_stackedwidget",在ide上面打代码都不出来( ui->tabshow2->parent()->setMouseTracking(true);),找不到qt_tabwidget_stackedwidget的引用,所以对此,正确的引用方式是 ui->tabshow2->parentWidget()->setMouseTracking(true);用的是parentwidget方法才行,parent方法只能用于索引信息,不能用于代码引用对象,这点要记得!

3️⃣下面给出界面和控件的级联关系,成功调用后代码编写:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三,参考资料

  • 解决QMainWindow下setMouseTracking在指定控件下无响应问题(PyQt5+Qtdesigner
  • QT setMouseTracking没反应
  • Qt mouseMoveEvent不执行情况

最后,文中若有不足,敬请批评指正!!!

相关内容

热门资讯

每日必看!江岸多玩到底能开挂吗... 每日必看!江岸多玩到底能开挂吗(辅助挂),江岸多玩原来真的有辅助挂讲义1、江岸多玩脚本辅助下载、江岸...
玩家交流!颖河竞技怎么开挂(外... 玩家交流!颖河竞技怎么开挂(外挂),颖河竞技好像是有外挂教材一、颖河竞技游戏安装教程牌型概率发牌机制...
最新通报!皮皮四川麻将软件下载... 最新通报!皮皮四川麻将软件下载(辅助挂),皮皮四川麻将果然有辅助挂模块1、操作简单,无需皮皮四川麻将...
一分钟揭秘!52游戏开挂脚本(... 一分钟揭秘!52游戏开挂脚本(透视挂),52游戏切实有透视挂法子52游戏脚本下载中分为三种模型:52...
一分钟快速了解!堆堆乐开挂破解... 一分钟快速了解!堆堆乐开挂破解(外挂),堆堆乐竟然真的有外挂方针1、下载好堆堆乐正确养号方法之后点击...
重大通报!汇城贵州麻将开挂脚本... 重大通报!汇城贵州麻将开挂脚本(开挂),汇城贵州麻将原来真的有开挂法门1、重大通报!汇城贵州麻将开挂...
盘点一款!七色城透视挂件(外挂... 盘点一款!七色城透视挂件(外挂),七色城切实是真的有外挂经验1、全新机制【七色城ai辅助工具激活码】...
今日头条!多多休闲透视软件下载... 今日头条!多多休闲透视软件下载(外挂),多多休闲确实是真的有外挂攻略1、首先打开多多休闲辅助器下载最...
关于!钱柜麻将真的有透视吗(辅... 关于!钱柜麻将真的有透视吗(辅助器),钱柜麻将一贯是有辅助器练习钱柜麻将能透视中分为三种模型:钱柜麻...
今日焦点!河北家乡棋牌辅助工具... 今日焦点!河北家乡棋牌辅助工具(外挂),河北家乡棋牌果然是有外挂手册小薇(辅助器软件下载)致您一封信...