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

1、重新实现reject()方法,关闭对话窗体不一定必须采用closeEvent进行处理。这是因为按下Esc键默认触发的是reject方法,可以重写reject方法。如下:

void LoginDialog::reject()

{

this->close();

}

重写keyPressEvent(QKeyEvent *event),这是比较容易理解的方法,也是处理各种按键常用的方法。

void ShowDialog::keyPressEvent(QKeyEvent *event)

{

switch(event->key())

{

case Qt::Key_Escape:

this->close();

break;

default:

QDialog::keyPressEvent(event);

}

}

值得注意的是,对于QWidget来说,重写reject是无效的,因为它默认执行的不是reject。

Qt中Esc键触发事件处理

esc键 qt 退出菜单_Qt中Esc键触发事件处理相关推荐

  1. esc键 qt 退出菜单_qt之esc键

    Esc键对大家来说实在熟悉不过的了,在Qt中Esc键也会默认的进行一些事件的触发,今天对Esc键测试了一下,突然发现不像我想象的那样,在QDialog中按下Esc键会默认调用reject()方法而不是 ...

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

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

  3. qt repaint 用法_Qt 中update()和repaint()的区别

    void QWidget::repaint ( int x, int y, int w, int h, bool erase = TRUE ) [槽] 通过立即调用paintEvent()来直接重新绘 ...

  4. python字典中的键是什么_python字典中的键是什么

    字典的键 字典中的值没有任何限制, 可以是任意Python对象,即从标准对象到用户自定义对象皆可,但是字典中的键是有类型限制的. (1)不允许一个键对应多个值 必须明确一条原则:每个键只能对应一个项. ...

  5. qt 复制字符串_QT中字符串的转化与拼接

    先说几个相关的类: 一 .QChar QChar 类是 Qt 中用于表示一个字符的类,实现在 QtCore 共享库中.QChar 类内部用2个字节的Unicode编码来表示一个字符. 构造 QChar ...

  6. json qt 解析数组_Qt中 UI文件是如何转成C++文件的

    文章首发公众号:Qt那些事儿 序 UI文件为标准的XML h文件为标准的Qt语法的文件. 先思考一分钟:如何让你来设计,你如何做转化? 过程 其实过程很简单 读取ui文件(即xml) -> 经过 ...

  7. qt toutf8函数_qt中的toUtf8, toLatin1, Local8bit, toUcs4(转)

    1 首先说下字符集. gb18030字符集兼容了gbk字符集,以两个字节表示一个文字.windows系统可能使用的就是这两种的一种. unicode字符集以2个或以上的字节表示一个汉字. 通用字符集( ...

  8. oracle中主键创建的语法,Oracle中主键、外键、索引、序列、唯一性约束的创建

    1.主键的创建 方法一:直接在sql语句中声明字段主键约束 create table table_name (id type[length] constraint pk_name primary ke ...

  9. Python中遍历字典以及字典中的键和值

    1.遍历字典 1.访问某个键对应的值,直接将键名放在方括号内置于字典名后即可. 示例 dict_1 = {"我":5,"爱":2,"你":1 ...

最新文章

  1. Coolite Toolkit学习笔记九:表单布局控件FormLayout与FromPanel
  2. python excel读取出错_python读取excel数据出错
  3. 《网易编程题》计算糖果
  4. 搭载鸿蒙os的电脑,全新华为 MatePad Pro 发布在即:搭载鸿蒙系统
  5. .NET框架类库中的命名空间
  6. 分析java 线程占用内存_Java线程:保留的内存分析
  7. 第28课 叮叮当当 《小学生C++趣味编程》
  8. 图文并茂安装CentOS 6.7Linux系统
  9. java特定用户登录_求教!!!用 jsp+servlet 怎样控制指定用户名登录页面啊!
  10. Linux下安装NFS共享文件资源
  11. Windows Server 2008 R2 官方原版下载大全
  12. 联想P340加显卡白屏,降级BIOS恢复正常。
  13. UE4_相对于某一个Actor的夹角计算
  14. 我们提倡适量饮酒,但多少算是适量呢?
  15. 小米路由器3c 虚拟服务器,小米路由器3C上不了网怎么办?
  16. 9、Vue自定义指令
  17. 2018 Macbook pro 15(10.13.6)安装Nvidia 1070(Aorus Gaming Box)显卡驱动
  18. 股票入门基础知识|游资或者庄股出货的结构形态
  19. OSCP-Pelican(Exhibitor、gcore提权)
  20. 最小二乘法 拟合平面直线

热门文章

  1. 打印机设备与计算机连接类型,电脑打印机的连接方式 打印机的种类有哪些
  2. Tensorflow2.0 利用LSTM和爬虫做自动生成七言律诗
  3. 任意四面体的外接球的半径(克列尔(A.L.Crelle)公式)
  4. VM虚拟机局域网组网配置
  5. DIY 章鱼猫活动 |
  6. linux下强制覆盖的密令
  7. js实现上下左右移动小方块
  8. FreeMarker导出excel打不开,特殊字符问题
  9. 国内ERP的弊端,从“自定义单据“和“自定义流程“来应对客户多变的业务需求
  10. 企业微信可以自动上班打卡吗?