我在 PySide 中遇到问题,试图确定在事件函数中按下了哪个鼠标按钮。我特别需要它来忽略鼠标移动事件,因为它在左右鼠标按钮上都起作用。
如果按下场景中的右键,我想忽略鼠标移动事件。有帮助吗?
最佳答案
所有鼠标事件都有两种方法(button
和buttons
)来确定哪个按钮被按下。但仅针对 move
事件文档说:
Note that the returned value is always Qt::NoButton for mouse move events.
对于 mouseMoveEvent
你应该使用 buttons
方法。
void mouseMoveEvent(QMouseEvent *e)
{
if(e->buttons() == Qt::RightButton)
qDebug() << "Only right button";
}
当然,为了忽略移动事件,您需要在 eventFilter
中完成这项工作。
关于c++ - Qt如何检查按下了哪个鼠标按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16759544/