【问题标题】:Qt simulate key press to control SimpleScreenRecorder application in LinuxQt模拟按键控制Linux中的SimpleScreenRecorder应用程序
【发布时间】:2018-08-16 14:36:19
【问题描述】:

我希望(在 Linux 中)通过模拟按键 CTRL+SHIFT+R 激活 SimpleScreenRecorder 来控制桌面录制。

SimpleScreenRecorder image

我试过这段代码:

QKeyEvent * eve1 = new QKeyEvent (QEvent::KeyPress,Qt::Key_R,Qt::ControlModifier|Qt::ShiftModifier,"r");
qApp->postEvent ((QObject*)this, (QEvent *)eve1);
QKeyEvent * eve2 = new QKeyEvent (QEvent::KeyRelease,Qt::Key_R,Qt::ShiftModifier|Qt::ControlModifier,"r");
qApp->postEvent ((QObject*)this, (QEvent *)eve2);

但这不起作用。 我可以将按键事件发送到 ui->lineEdit,但在这种情况下,我无法将它发送到另一个正在运行的应用程序 SimpleScreenRecorder。

我该如何解决这个问题? 谢谢。

【问题讨论】:

    标签: keypress qkeyevent keyrelease


    【解决方案1】:
    void MainWindow::on_pushButton_clicked()
    {
     system("xdotool key \"control+shift+r\"");
    }
    

    【讨论】:

      猜你喜欢
      • 2010-11-18
      • 1970-01-01
      • 1970-01-01
      • 2012-02-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多