qt中加了QAction却一直无法显示出来

在别人的项目里加了一个QAction,但是一直显示不出来,查了很久没发现问题在哪,请教各位

img

  • 请看👉 :Qt中QAction在菜单栏、工具栏、状态来上的使用及添加快捷键
  • 除此之外, 这篇博客: QT 如何给程序添加快捷键事件中的 <1>利用QAction,给QAction对象设置快捷键 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • //定义QAction的对象
    QAction* action = new QAction(this);
    //设置触发QAction对象的快捷操作
    action->setShortcut(QKeySequence("Ctrl+W"));
    //把QAction的对象加入到当前窗口中去
    this->addAction(action);
    //连接信号与槽
    connect(action, &QAction::triggered, this, &QtShortcutDemo::slotDoAction);
    
  • 以下回答由chatgpt基于相关博客总结生成:

    根据参考资料所述,使用QAction需要完成以下步骤:

    1. 创建QAction对象,设置图标、快捷键等属性;
    2. 将QAction对象添加到某个QWidget部件中,如菜单、工具栏等;
    3. 将QAction对象的triggered信号连接到需要执行的槽函数,使得QAction被激活后能够执行对应的功能函数。

    具体回答:

    1. 无法确定在哪个版本的Qt中添加QAction;
    2. 将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添加到工具栏中
    
    1. 代码中onActionTriggered是QAction被触发后要执行的槽函数,可以根据具体需求进行定义和实现。

    由于无法确定具体需求和代码实现细节,以上代码仅供参考和示范。