Qt事件
Posted mathyk
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt事件相关的知识,希望对你有一定的参考价值。
1.每一个控件都有
bool event(QEvent *event);
bool eventFilter(QObject *watched, QEvent *event); //事件过滤器,就是什么控件想捕获怎样的事件
ui->label->installEventFilter(this); //label控件安装过滤器 ui->label->setMouseTracking(true); //设置鼠标跟踪 bool Widget::eventFilter(QObject *watched, QEvent *event) { if(watched == ui->label) { static int t = 0; QMouseEvent *env = (QMouseEvent *)(event); //鼠标事件 if(event->type() == QEvent::MouseMove) //移动事件 { ui->label->setText(QString("%1").arg(t++)); return true; } } return QWidget::eventFilter(watched,event); }
以上是关于Qt事件的主要内容,如果未能解决你的问题,请参考以下文章
Android 事件分发事件分发源码分析 ( Activity 中各层级的事件传递 | Activity -> PhoneWindow -> DecorView -> ViewGroup )(代码片段