第七章、PyQt图形界面应用程序的事件捕获方法

一、 概述

PyQt的图形界面应用中,事件处理类似于Windows系统的消息处理。一个带图形界面的应用程序启动后,事件处理就是应用的主循环,事件处理负责接收事件、分发事件、接收应用处理事件的返回结果,在程序中捕获应用关注的事件触发相关事件处理是良好UI开发的必经之路。那么在PyQt的图形界面应用中,有哪些方法可以捕获事件以进行处理呢?下面我们就来分析一下。

二、 应用层级的事件捕获

2.1、notify方法捕获应用事件
PyQt的事件处理是从应用主程序开始的,在PyQt应用主程序中,真正负责事件分发处理的是QApplication类的notify方法(或称为notify函数),该方法负责向接收者发送事件,返回接收事件对象的处理程序返回的值。因此要在应用中捕获事件并进行处理,只要通过从QApplication类派生自定义的应用类并重写notify方法就可以捕获应用接收到的所有事件。

2.1.1、notify的语法
notify(QObject receiver, QEvent event)

其中:
1、参数receiver表示将事件发送给谁;
2、event就是事件参数,类型为QEvent ,如果不了解请参考《

posted on 2019-12-27 10:20  老猿Python  阅读(322)  评论(0编辑  收藏  举报