QT:leaveEvent - 检查光标是否在窗口小部件的区域中?

时间:2014-06-25 20:32:05

标签: c++ qt

我目前有一个继承自QLabel的类,此类实现方法mouseMoveEventleaveEvent。当鼠标悬停在此窗口小部件上时,将显示一个对话框。但是,如果在其他位置发生鼠标单击,则对话框仅会消失。我希望当鼠标移出这个小部件时,对话框会消失。因此,我考虑使用leaveEvent方法来调用dialog.hide()。我的问题是如何确定鼠标光标是否位于小部件区域?

1 个答案:

答案 0 :(得分:2)

看看Qt - Determine absolute widget and cursor position。这里解释了两种方式..使用坐标并使用QWidget :: underMouse()。