weixin_44163782 2023-06-15 06:03 采纳率: 70%
浏览 106
已结题

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

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

img

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-06-15 08:04
    关注
    • 请看👉 :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被触发后要执行的槽函数,可以根据具体需求进行定义和实现。

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

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 7月10日
  • 已采纳回答 7月3日
  • 创建了问题 6月15日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部