C++ QT事件问题
我正在编写一个qt程序,并有以下要求 当30秒未点击时,锁定屏幕。如果有人在30秒后再次单击,请将其重定向到登录屏幕。 我已经阅读了关于事件的qt文档,我相信我需要方法1或2来处理鼠标事件 1.在qApp上安装事件筛选器 qApp上的事件筛选器监视发送到应用程序中所有对象的所有事件 2.重新实现QApplication::notify()。 Qt的事件循环和sendEvent()调用此函数以分派事件。通过重新实现它,您可以在其他人之前看到事件 在我看来,它们也很强大,但我不理解它们的区别。C++ QT事件问题,c++,qt,events,C++,Qt,Events,我正在编写一个qt程序,并有以下要求 当30秒未点击时,锁定屏幕。如果有人在30秒后再次单击,请将其重定向到登录屏幕。 我已经阅读了关于事件的qt文档,我相信我需要方法1或2来处理鼠标事件 1.在qApp上安装事件筛选器 qApp上的事件筛选器监视发送到应用程序中所有对象的所有事件 2.重新实现QApplication::notify()。 Qt的事件循环和sendEvent()调用此函数以分派事件。通过重新实现它,您可以在其他人之前看到事件 在我看来,它们也很强大,但我不理解它们的区别。 哪一
哪一个适合我的要求?谢谢。除了QApplication::notify(或其覆盖)将在应用程序上的任何事件筛选器之前调用之外,您基本上可以用这两种解决方案实现相同的效果 由于第一种方法不需要对QApplication进行子类化,因此它通常是首选方法。在您的情况下,重写QApplication::notify的唯一原因是您是否因为其他原因需要重写它,例如,因为您需要执行与您自己的自定义事件相关的任何操作 但考虑到您的需求,我个人会选择以下解决方案: