c – 如何使用Qt模拟鼠标事件?

我想用Qt模拟鼠标事件.例如,当我按下键盘上的一个键时,程序可以模拟鼠标单击事件.我已经尝试了下面的代码,但是当我按下’K’时,程序停止并给我一个错误:

该计划意外完成.
    

    case Qt::Key_K:
        QMouseEvent *mEvnPress;
        QMouseEvent *mEvnRelease;
        mEvnPress = new QMouseEvent(QEvent::MouseButtonPress, pos, Qt::LeftButton, Qt::LeftButton, Qt::NoModifier);
        mEvnRelease = new QMouseEvent(QEvent::MouseButtonRelease, pos, Qt::LeftButton, Qt::LeftButton, Qt::NoModifier);
        QCoreApplication::sendEvent(QWidget::focusWidget(),mEvnPress);
        QCoreApplication::sendEvent(QWidget::focusWidget(),mEvnRelease);
        break;
    

最佳答案 它有
QtTestLib.它专为写测试而设计,它有
mouseClick可以满足您的需求.

如果您不想使用此模块,您可以随时查看其源代码并了解如何正确模拟鼠标事件.

点赞