我正在开发类似画家的应用程序,该应用程序允许用户在图像上绘制点并使用不同的点子集进行管理。在触发动作时创建子集。新创建的子集也是动作,它们的编号从1到用户需要多少。我想在创建时为新创建的动作设置快捷方式。例如,对于动作“ Set_2”,我想要快捷方式“ Ctrl + 2”,对于“ Set_3”-“ Ctrl + 3”,等等。 这是一段代码,显示了如何在我的应用程序中创建动作:
void ImageViewer::on_New_setAct_triggered()
{
setnumber++;
newset = new QAction;
newset->setText(QString("Set_" + QString::number(setnumber)));
/...
}
对可能的解决方案有任何想法吗?
答案 0 :(得分:1)
QAction
类具有setShortcut()
方法,该方法将QKeySequence
作为参数:
此属性的有效键码可在Qt::Key和Qt::Modifier中找到。
QAction *newset = new QAction();
newset->setShortcut(QKeySequence(tr("Ctrl+%1").arg(setnumber)));