在别人的项目里加了一个QAction,但是一直显示不出来,查了很久没发现问题在哪,请教各位
//定义QAction的对象
QAction* action = new QAction(this);
//设置触发QAction对象的快捷操作
action->setShortcut(QKeySequence("Ctrl+W"));
//把QAction的对象加入到当前窗口中去
this->addAction(action);
//连接信号与槽
connect(action, &QAction::triggered, this, &QtShortcutDemo::slotDoAction);
根据参考资料所述,使用QAction需要完成以下步骤:
具体回答:
QAction *action = new QAction("Action", this); // 创建QAction对象
action->setShortcut(QKeySequence::New); // 设置快捷键
connect(action, &QAction::triggered, this, &MainWindow::onActionTriggered); // 设置信号槽连接
QMenu *menu = menuBar()->addMenu("&File"); // 创建菜单,并将菜单添加到菜单栏
menu->addSeparator(); // 添加分隔线
menu->addAction(action); // 将QAction添加到菜单中
将QAction添加到工具栏可以使用下面的代码:
QToolBar *toolBar = addToolBar("ToolBar"); // 创建工具栏
toolBar->addAction(action); // 将QAction添加到工具栏中
onActionTriggered
是QAction被触发后要执行的槽函数,可以根据具体需求进行定义和实现。由于无法确定具体需求和代码实现细节,以上代码仅供参考和示范。