PyQt学习随笔:重写组件的event方法捕获组件的事件
2024-09-06 02:07:00
在PyQt的组件对象中,都有从QWidget中继承的方法event,而QWidget.event是对QObject类定义的虚拟方法event的实现。
event方法的语法:
bool event(QEvent e)
event方法用于接收发给一个对象的事件,如果事件被识别并处理应该返回True,对于没有被应用识别和处理的事件,需要调用父类的event方法以保证事件的正确处理。
注意:
1、该方法中只能捕获确认是发给对应对象的事件,不能捕获通过该对象转发给上级的事件;
2、通过重写该方法可以捕获对象的所有事件,但Qt并不推荐这种使用方法,而应该通过重写具体事件的具体方法来捕获特定事件;
3、event和特定事件的事件处理方法针对一个特定事件处理时,先调用event再调用特定事件的事件处理方法;
4、如果event处理事件时,没有调用父类方法,则对应的事件不能再被该事件的特定事件处理方法捕获;
5、键盘按下和释放事件的处理方式与其他事件不同,event()检查释放时tab和shift+tab,如果是尝试适当移动焦点。如果没有要将焦点移动到的小部件(或按键不是tab或shift+tab),event()调用keypressevent()。
博客地址:https://blog.csdn.net/LaoYuanPython
老猿Python博客文章目录:https://blog.csdn.net/LaoYuanPython/article/details/98245036
最新文章
- lvs的dr模式分析(二)
- AC日记——斗地主(dfs)
- SecureCRT通过console口连接思科设备
- 244. Shortest Word Distance II
- Three ways to do WCF instance management
- objective-c(初始化)
- 【HDOJ】5155 Harry And Magic Box
- 创见WiFi SD卡破解之路
- Redhat_AS5下安装MySQL5.0总结
- 基于laravel5.4 vue 和vue-element搭建的单页面后台CMS
- delete操作字符串会报错吗?
- MongoDB十二种最有效的模式设计【转】
- H5与C3权威指南笔记--box-shadow
- 随心测试_软测基础_006<;测试人职业发展>;
- Linux 桌面双击运行脚本
- elementUI el-table渲染的时候出现bug
- C# 关键字base用法
- Windows 修改host文件
- 【转载】C++引用详解
- Mint linux中调整屏幕亮度的方法