1 鼠标事件
QWidget::setMouseTracking(true);
继承QWidget或其子类,重写mouseMoveEvent/mousePressEvent/mouseReleaseEvent/mouseDoubleClickEvent(QMouseEvent *);
设置setMouseTracking(true);
2 键盘事件
继承QWidget或其子类,重写keyPressEvent/keyReleaseEvent(QKeyEvent *);
3 事件监控
obj1->installEventFilter(obj2);
重写eventFilter(QObject *watched,QEvent *event)
watched即obj1
移除监控removeEventFilter
QWidget::setMouseTracking(true);
继承QWidget或其子类,重写mouseMoveEvent/mousePressEvent/mouseReleaseEvent/mouseDoubleClickEvent(QMouseEvent *);
设置setMouseTracking(true);
2 键盘事件
继承QWidget或其子类,重写keyPressEvent/keyReleaseEvent(QKeyEvent *);
3 事件监控
obj1->installEventFilter(obj2);
重写eventFilter(QObject *watched,QEvent *event)
watched即obj1
移除监控removeEventFilter
本文介绍了Qt中事件处理的基本方法,包括鼠标事件、键盘事件及事件过滤器的使用。通过继承QWidget并重写特定事件处理函数,可以实现对用户输入的响应。此外,还介绍了如何安装和移除事件过滤器来监控对象的事件。
1133

被折叠的 条评论
为什么被折叠?



