我希望(在Linux中)通过使用模拟键按CTRL + SHIFT + R激活SimpleScreenRecorder来控制桌面录制。
我试过这段代码:
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。
我该如何解决这个问题? 感谢。
答案 0 :(得分:0)
void MainWindow::on_pushButton_clicked()
{
system("xdotool key \"control+shift+r\"");
}