如何不断追踪QWidget的全球地位

时间:2016-05-20 14:20:44

标签: qt widget

简而言之

我意识到我可以使用mapToGlobal(...)来获取相对于屏幕的小部件位置,我希望在它发生变化时进行跟踪。

QMoveEvent移动与其父移动相比时有QWidget,但当小部件相对于屏幕移动时没有QEvent

有几种方法可以在没有事件发生的情况下相对于屏幕移动;如果共享公共父项的任何窗口小部件被移动或调整大小,或者窗口框架发生更改。

我尝试了什么

目前,我过滤所有移动和调整特定小部件祖先事件的大小,但是兄弟姐妹或阿姨/叔叔也可能轻易导致全球位置发生变化,我不想跟踪每个小部件我的项目是为了一个......

我觉得必须有更好的方法,但我已经确认没有通过测试捕获的事件,我无法在文档中看到任何内容,也无法找到任何其他人询问同样的问题......

1 个答案:

答案 0 :(得分:0)

你需要跟踪兄弟姐妹是不正确的。您需要跟踪所有祖先的位置。这不难做到。