跳转到帖子
登录关注  
墨香年少

Qt中如何给QLabel 添加点击事件

已推荐帖子

不要直接使用QLable,自己写一个类集成QLabel

头文件:

#ifndef LABEL_H
#define LABEL_H

#include <QLabel>
#include <QWidget>
#include <Qt>

class Label : public QLabel {
    Q_OBJECT

public:
    explicit Label(QWidget* parent = Q_NULLPTR, Qt::WindowFlags f = Qt::WindowFlags());
    ~Label();

signals:
    void clicked();

protected:
    void mousePressEvent(QMouseEvent* event);

};

#endif // LABEL_H

cpp文件

#include "Label.h"

Label::Label(QWidget* parent, Qt::WindowFlags f)
    : QLabel(parent) {

}

Label::~Label() {}

void Label::mousePressEvent(QMouseEvent* event) {
    emit clicked();
}

使用:

connect(Label实例化对象,SIGNAL(clicked()),this,SLOT(关联的槽函数()));

 


目之所及,皆是回忆,心之所想,皆是过往

分享这篇帖子


链接帖子
分享到其他站点

创建帐户或登录来提出意见

你需要成为会员才能提出意见

创建帐户

注册成为会员。只要几个简单步骤!

注册帐户

登录

已有帐户? 请登录。

现在登录
登录关注  

×
×
  • 创建新的...

重要信息

注册必须使用2-8个中文汉字作为账号