Qt 模拟鼠标点击

来源:互联网 发布:淘宝联盟余额提现时间 编辑:程序博客网 时间:2024/05/20 06:38
QPoint pos(0,0);QMouseEvent event0(QEvent::MouseButtonPress, pos, Qt::LeftButton, Qt::LeftButton, Qt::NoModifier);QApplication::sendEvent(ui->pushbutton, &event0);QMouseEvent event1(QEvent::MouseButtonRelease, pos, Qt::LeftButton, Qt::LeftButton, Qt::NoModifier);QApplication::sendEvent(ui->pushbutton, &event1);
  • sendEvent 是发送事件函数,第一个参数是接收该事件的元对象,第二个参数是要发送的事件;
  • QMouseEvent用来构造一个模拟的鼠标事件,构造函数中定义了事件的类型为按压或者是释放,pos参数是用来指定在接收该事件的元对象的事件发生位置,例子中就是指定了在按钮的(0,0)位置接收该点击事件;
  • QPos定义位置。

    对于QLineEdit这种部件,可以通过setFocus()函数先让部件获得角点,再把sendEvent()中的接收对象换成QWidget::focusWidget();

原创粉丝点击