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

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

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

img

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-06-15 16: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月11日
  • 已采纳回答 7月3日
  • 创建了问题 6月15日

悬赏问题

  • ¥35 navicat将excel中的数据导入mysql出错
  • ¥15 rt-thread线程切换的问题
  • ¥20 python忆阻器数字识别
  • ¥15 高通uboot 打印ubi init err 22
  • ¥20 PDF元数据中的XMP媒体管理属性
  • ¥15 R语言中lasso回归报错
  • ¥15 网站突然不能访问了,上午还好好的
  • ¥15 有没有dl可以帮弄”我去图书馆”秒选道具和积分
  • ¥15 semrush,SEO,内嵌网站,api
  • ¥15 Stata:为什么reghdfe后的因变量没有被发现识别啊