主要是前三种
\
bool MyWidget::eventFilter(QObject *obj, QEvent *e)
{
if(obj == ui->label_2)
{
QMouseEvent *env = static_cast<QMouseEvent *>(e);
//判断事件
if(e->type() == QEvent::MouseMove)
{
ui->label_2->setText(QString("Mouse move:(%1, %2)").arg(env->x()).arg(env->y()));
return true;
}
if(e->type() == QEvent::MouseButtonPress)
{
ui->label_2->setText(QString("Mouse Press:(%1, %2)").arg(env->x()).arg(env->y()));
return true;
}
if(e->type() == QEvent::MouseButtonRelease)
{
ui->label_2->setText(QString("Mouse Release:(%1, %2)").arg(env->x()).arg(env->y()));
return true;
}
else
{
return QWidget::eventFilter(obj,e);
}
}
else
{
return QWidget::eventFilter(obj,e);
}
// if(obj == ui->pushButton)
// {
// } //和上面的类似
}
\