我在myWidget的中心有一个myWidget,我在myWidget上使用mousePressEvent()来抓取鼠标按下事件。我想隐藏myWidget在鼠标按下,但不是当按在widget内。我可以用event->windowPos()来计算按压位置,它给出了QPointF,也给出了ui->widget->rect(),也就是QRect。
如何检查QpointF是否在QRect中
发布于 2016-04-18 08:40:11
我找到了另一种简单的方法来查找是否在小部件上发生了新闻事件。
if (ui->widget->underMouse()) doSomething();
发布于 2017-08-01 13:22:53
所用:
if (ui->widget->geometry().contains(event->pos())) return;发布于 2016-04-20 10:13:52
我想,您可以重写方法Widget::mousePressEvent(QMouseEvent* event)并在其中调用event->accept()。通过这样做,您将使用鼠标按下事件,并且它不会传播到父myWidget。因此,myWidget只会得到发生在Widget几何图形之外的温室事件。
https://stackoverflow.com/questions/36686548
复制相似问题