<span style="font-family:FangSong_GB2312;font-size:18px;color:#ff0000;">Qt提供5个级别的事件处理和过滤: 1,重新实现事件函数。 比如: mousePressEvent(), keyPress-Event(), paintEvent() 。 这是最常规的事件处理方法。 2,重新实现QObject::event(). 这一般用在Qt没有提供该事件的处理函数时。也就是,我们增加新的事件时。 3,安装事件过滤器 4,在 QApplication 上安装事件过滤器。 这之所以被单独列出来是因为: QApplication 上的事件过滤器将捕获应用程序的所有事件,而且第一个获得该事件。也就是说事件在发送给其它任何一个event filter之前发送给QApplication的event filter。 5,重新实现QApplication 的 notify()方法. Qt使用 notify()来分发事件。要想在任何事件处理器捕获事件之前捕获事件,唯一的方法就是重新实现QApplication 的 notify()方法。</span>
Qt提供5个级别的事件处理和过滤
最新推荐文章于 2024-05-30 17:04:22 发布