【笔记1-3】Qt系列:setShortcut 设定快捷键 取消快捷键

使用QKeyEvent键盘按下事件来设定快捷键,虽然很方便,但也有不舒服的情况,比如主窗口中包含多个小窗口,聚焦到小窗口时,主窗口的按下事件就不响应了,因此需要不受窗口限制的全局快捷键设定方式

QAction和QPushButton都有setShortcut ()接口,可以用来设定快捷键

代码分析

 QMenuBar * menubar = new QMenuBar(this);//创建菜单栏

    QMenu *menu_test;

    menu_test = new QMenu("menu11");//创建菜单

    QAction * action_1;

    action_1 = new QAction("act1",this);//创建动作

    menu_test->addAction(action_1);

    connect(action_1 , SIGNAL(triggered()) , this , SLOT(textset()));//关联槽函数

    action_1->setShortcut(tr("Ctrl+1"));//设定快捷键

    action_1->setShortcut(0);//如果写了这句就可以取消快捷键

    menubar->addMenu(menu_test);

setShortcut的内容有多种设置方法:

setShortcut(Qt::CTRL + Qt::Key_B);
setShortcut(tr("Ctrl+1"));
setShortcut(QKeySequence("Ctrl+2"))

取消快捷键也有几种方法:

setShortcut(0);
setShortcut(QKeySequence());

如果要制作带有自定义快捷键列表的界面,需要动态设定action的快捷键,这种方式比较合适

相关推荐

  1. Qt快捷键

    2023-12-08 18:46:05       56 阅读
  2. Qt:使用ctrl+z快捷键取消文本框修改

    2023-12-08 18:46:05       39 阅读
  3. QT常用快捷键

    2023-12-08 18:46:05       31 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-08 18:46:05       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-08 18:46:05       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-08 18:46:05       87 阅读
  4. Python语言-面向对象

    2023-12-08 18:46:05       96 阅读

热门阅读

  1. 实现el-dialog可拖动

    2023-12-08 18:46:05       53 阅读
  2. 西北大学计算机844考研-最后20天复习重点

    2023-12-08 18:46:05       53 阅读
  3. 纯代码压缩WordPress前端Html

    2023-12-08 18:46:05       58 阅读
  4. 在Go中导入软件包

    2023-12-08 18:46:05       71 阅读
  5. React setState()的两种书写方法对比

    2023-12-08 18:46:05       51 阅读
  6. 力扣102. 二叉树的层序遍历

    2023-12-08 18:46:05       51 阅读
  7. Oracle ADRCI工具使用说明

    2023-12-08 18:46:05       41 阅读
  8. Oracle Flashback示例集锦

    2023-12-08 18:46:05       48 阅读
  9. K3cloud-计算成本分析DEmo

    2023-12-08 18:46:05       36 阅读
  10. vivado $clog2函数

    2023-12-08 18:46:05       61 阅读