Qt鼠标事件mouseEvent

#ifndef MYLABEL_H
#define MYLABEL_H

#include <QWidget>
#include <QDebug>
#include <QMouseEvent>
#include <QLabel>

namespace Ui {
class MyLabel;
}

class MyLabel : public QLabel
{
    Q_OBJECT

public:
    explicit MyLabel(QWidget *parent = nullptr);
    ~MyLabel();

    void mousePressEvent(QMouseEvent *event) override
    {
        qDebug() << "mousePressEvent";
    }

    void mouseReleaseEvent(QMouseEvent *event) override
    {
        qDebug() << "mouseReleaseEvent";
    }

    void mouseMoveEvent(QMouseEvent *event) override
    {
        qDebug() << "x" << event->x();
        qDebug() << "y" << event->y();
        qDebug() << "globalX" << event->globalX();
        qDebug() << "globalY" << event->globalY();
    }

private:
    Ui::MyLabel *ui;
};

#endif // MYLABEL_H

/* 鼠标按下、移动、释放 */
21:58:16: Starting ...
mousePressEvent
x 18
y 29
globalX 928
globalY 549
x 20
y 29
globalX 930
globalY 549
x 22
y 29
globalX 932
globalY 549
x 23
y 29
globalX 933
globalY 549
x 25
y 30
globalX 935
globalY 550
mouseReleaseEvent
posted @   thomas_blog  阅读(136)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示