我怀疑某些东西阻止了我在Qt中调用鼠标事件。因此,我认为将事件添加到线程可能会有所帮助。有没有办法做到这一点?如果是这样,语法怎么样?
答案 0 :(得分:0)
Qt标准鼠标事件来自QWidget
个对象。那些必须始终存在于主线程中。
所以不,你不能在其他线程中接收正常的鼠标事件。
但是,您应该在主窗口或qApp
对象中安装事件过滤器,这样您就可以看到所有事件。在文档中查看如何使用事件过滤器,但简而言之,您需要子类QObject
来覆盖eventFilter
方法,然后创建此类的实例,并将其安装为事件过滤器另一个对象。