MyLabel::MyLabel(QWidget *parent) : QLabel(parent)
{
this->setMouseTracking(true); // 设置手表默认追踪
}
void MyLabel::enterEvent(QEvent *event)
{
qDebug()<<"鼠标进入";
}
void MyLabel::leaveEvent(QEvent *event)
{
qDebug()<<"鼠标离开";
}
void MyLabel::mousePressEvent(QMouseEvent *event)
{
if(event->button() == Qt::LeftButton){
qDebug()<<"鼠标摁下";
}
}
void MyLabel::mouseReleaseEvent(QMouseEvent *event)
{
qDebug()<<"鼠标释放";
}
void MyLabel::mouseMoveEvent(QMouseEvent *event)
{
QString str = QString("鼠标按下了!!! x = %1 y = %2").arg(event->x()).arg(event->y());
// 持续状态需要 buttons 用与操作符
if(event->buttons() & Qt::LeftButton)
qDebug()<<"鼠标移动"<<str;
}