在Qt中跟踪事件
track events in Qt
我需要获得在Qt小部件(Qt c++)中触发的所有事件的列表,就像一个实用程序,可以捕获所有事件或一些将被调用的函数,以及每次事件被触发时传递给函数的事件细节。
谁能告诉我如何做到这一点,或者有什么免费的实用程序可用于此目的?
QObject::installEventFilter是你想要的。你可以看到进入对象的所有事件。
如果你需要查看所有的事件,你可以在QApplication上安装事件过滤器,参考文档QCoreApplication::notify:
在QCoreApplication::instance()上安装事件过滤器。这样一个事件过滤器能够处理所有小部件的所有事件,所以它是就像重新实现notify()一样强大;此外,它的可能有多个应用程序全局事件筛选器。全球事件过滤器甚至可以查看禁用小部件的鼠标事件。请注意,中的对象调用应用程序事件筛选器主线程。
如果你做一个类衍生自QWidget
(让我们称之为RecordingWidget
),你可以重新实现它的event()
功能以任何方式记录你想(也许在RecordingWidget
的静态成员中保持日志),然后继续将事件传递给QWidget
的默认event
功能:
bool RecordingWidget::event(QEvent *event)
{
// Record stuff
...
// Send the event through QWidget's default event implementation
return QWidget::event(event);
}
相关文章:
- Android NDK传感器向事件队列报告奇怪的间隔
- 从文本文件中读取时钟时间和事件时间并进行处理
- WMI检测进程创建事件-c++
- EvtExportLogneneneba API正在将远程计算机的事件日志保存到远程PC本身.如何将其保存到主机
- 光线跟踪器灯光反射错误
- 人脸跟踪arduino代码的优化
- 处理闪烁窗口事件
- C++Builder中的OnClick事件签名存在问题
- 跟踪滚动条上的鼠标事件
- 什么是事件表 (wxWidgets)?
- 如何在 MFCaptureEngine 中获取"Camera removed"事件
- 给定顺序中的事件处理
- 当服务中的事件被触发时,如何将响应从服务发送回客户端?
- C++ MFC 跟踪事件调用
- 跟踪鼠标输入事件
- 无法跟踪鼠标事件 OpenCV
- 正在从Registry_TypeGroup1类获取注册表项路径(Windows事件跟踪)
- 如何在QT中同时使用QImage和鼠标跟踪事件
- 用于Windows的C++事件跟踪(ETW)包装
- 在Qt中跟踪事件