gpt4 book ai didi

Qt mouseMoveEvent 仅在按下鼠标左键时

转载 作者:行者123 更新时间:2023-12-04 02:27:39 24 4
gpt4 key购买 nike

我目前有一个绘制线条和矩形的程序。

void mousePressEvent(QMouseEvent *event);
void mouseReleaseEvent(QMouseEvent *event);
void mouseMoveEvent(QMouseEvent *event);

我使用 mouseMoveEvent 来绘制一条线的临时预览,当我释放时,我会绘制实际的线。我想知道的是,只有当我按下鼠标左键时,我才能让 mouseMoveEvent 工作。我尝试了以下但整个功能停止工作。
void mouseMoveEvent(QMouseEvent *event)
{
if(event->button() == Qt::LeftButton)
{
//do stuff
}
}

但随后该功能不做任何事情。任何帮助将不胜感激

最佳答案

来自 QMouseEvent::button() 的文档:

Note that the returned value is always Qt::NoButton for mouse move events.



您应该使用 buttons()反而。
if(event->buttons() & Qt::LeftButton)
{
//do stuff
}

关于Qt mouseMoveEvent 仅在按下鼠标左键时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16279762/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com