Esc键对大家来说实在熟悉不过的了,在Qt中Esc键也会默认的进行一些事件的触发,今天对Esc键测试了一下,突然发现不像我想象的那样,在QDialog中按下Esc键会默认调用reject()方法而不是closeEvent(QCloseEvent *event)或者其他事件。所以在这里如何管理和操作Esc键呢?

1、重新实现reject()方法

void LoginDialog::reject()

{

//关闭窗口,不一定非得是close(),可以重新执行其他事件

this->close();

}

2、重写keyPressEvent(QKeyEvent *event)

void LoginDialog::keyPressEvent(QKeyEvent *event)

{

switch(event->key())

{

//进行界面退出,重写Esc键,否则重写reject()方法

case Qt::Key_Escape:

this->close();

break;

default:

QDialog::keyPressEvent(event);

}

}

以上者两种方法都可以解决Esc键触发的问题!当然这只是在QDialog中是这种情况,在QWidget中也可以通过keyPressEvent(QKeyEvent

*event)来制定Esc键的功能,但是再重写reject()就不行了,以为它默认执行的不是reject(),具体的可以测试一下!

esc键 qt 退出菜单_qt之esc键相关推荐

  1. esc键 qt 退出菜单_Qt中Esc键触发事件处理

    有一段时间没有使用Qt开发,最近给公司写的小DEMO中,用到了Qt编写的界面,其中有几处用到Event处理,在编写对Esc键处理的过程中,发现closeEvent无效,最终发现了两种解决办法. 1.重 ...

  2. esc键 qt 退出菜单_【Qt】QDialog之屏蔽Esc键【转】

    简述 Qt中Esc键会在一些控件中默认的进行一些事件的触发,比如:QDialog,按下Esc键窗口消失.大多数情况下,我们不需要这么做,那么就需要对默认事件进行屏蔽. 源码分析 通过查看QDialog ...

  3. Qt使用键盘事件实现ESC键退出Halcon的绘图流程

    1.介绍 Halcon中的执行绘图算子draw_circlr或draw_rectangle1等算子在绘制图形时,单击鼠标左键进行绘图,点击右键确认图形,点击右键之前就进行等待动作,但是在MFC/Qt等 ...

  4. esc的作用计算机,电脑键盘上的Esc是什么意思

    电脑键盘上的Esc是什么意思 导语:esc的全称是Escape,在计算机领域是Escape的词义,代表转义字符.退出等.下面的是百分网小编为大家介绍一下ESC键,希望对大家能有所帮助. 一.Esc是什 ...

  5. qt退出 整个应用程序_为什么要对整个应用程序使用功能组合

    qt退出 整个应用程序 by Justin Fuller 贾斯汀·富勒(Justin Fuller) 为什么要对整个应用程序使用功能组合 (Why you should use functional ...

  6. python英文版怎么改成中文版_“PyQt的Qt Designer菜单是中文版的,怎么改成英文的“python的qt designer教程...

    python qt designer 怎么多建一个dialog 请说的详细点,那原消?还是只是出外一个窗口,如果出现另外一个窗口,那么这个窗口是 exec()吗?就是弹出窗口不关闭无法点击原有窗口,即 ...

  7. Java eclipse控制台按任意键返回主菜单 控制台清屏

    控制台清屏转载自 https://blog.csdn.net/qq_18144681/article/details/51222405 按任意键返回主菜单 System.in.read(); 清屏 p ...

  8. 如何添加Android返回键的退出功能

    环境:Cocos2dx v3.5 经网上搜索资料知道有两种方法可以实现Android返回键的退出功能,下面分别说明. 1.修改java代码 首先,在Cocos2dx的源文件中找到Cocos2dxGLS ...

  9. Qt QML 菜单/目录/工具栏的全面攻略(TabBar、MenuBar、ToolBar、Button定制、Listview、Repeater)

    Qt QML 菜单/目录/工具栏的全面攻略 1. TabBar的工具栏/目录 1.1 演示 1.2 关键控件 1.3 源码 2 MenuBar 菜单 2.1 演示 2.2 关键控件 2.3 源码 3 ...

最新文章

  1. Invoking Page() in async task.
  2. python 装饰器参数_python_如何修改装饰器中参数?
  3. 吴恩达机器学习笔记 —— 5 多变量线性回归
  4. 多项目同步进行“交叉编译”
  5. c++读取文件–结束条件的判断
  6. 移动平台对 meta 标签的定义
  7. Java—stream以及集合框架使用
  8. mysql数据库索引调优
  9. Visio 2007中进行数据库建模时如何显示字段类型以及概念名称
  10. 如何在linux查找虚拟机主机号_Linux主机名如何重命名?
  11. 7-16 求符合给定条件的整数集
  12. H5游戏推苻一HTML5游戏一手,【盘点】五个最热门的H5游戏平台
  13. 生日python十种日期格式_Python可视化-二十四节气与生日间隔天数统计
  14. The Future Of Mobile Development: HTML5 Vs. Native Apps
  15. 2022年计算机保研记录(计算所、浙大、华科、东南、北航)
  16. 金融行业认同的七本书
  17. LTE(4G) - NR(5G) RB 终端与基站之间的承载
  18. 前端每日实战:66# 视频演示如何用纯 CSS 创作一台咖啡机
  19. java提取图片中的文字内容_java 提取图片中的文字,手写文字
  20. h5 nan_易企秀资深前端架构师袁飞:移动H5开发如何避坑

热门文章

  1. 不要因为不知,所以设计
  2. 关于“马甲app”你不得不知的一些常识
  3. java鼠标经过代码_一段眼睛跟着鼠标转动的跟踪眼代码
  4. 北大软件“软件成分分析与漏洞检测工具”(CoBOT—SCA)正式发布
  5. AX210 PCIE网卡 安装记录(linux)
  6. Android 监听Home键按键事件
  7. 凛冬至,这一杯互联网咖啡能热多久?
  8. JavaScript测试工具对决:Sinon.js vs testdouble.js
  9. docker-compose部署的服务访问https报错:x509: certificate signed by unknown authority
  10. 新零售背景下“农村淘宝“线下和线上服务