QLabel实现点击事件

主要是通过安装过滤器,实现点击事件。

事件过滤器的操作:

  1. 首先给需要添加事件过滤器的部件注册监听对象;

    对象名->installEventFilter(true);

  1. 重写eventFilter(QObject *obj, QEvent *event)函数进行处理。

    MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
    {
    ui->setupUi(this);
    ui->label_LianJieDuXieQi->installEventFilter(this); //1.给label安装事件过滤器
    }
    bool MainWindow::eventFilter(QObject *watched, QEvent *event)
    {
    if (watched == ui->label_LianJieDuXieQi) {//2.监听label
    if (event->type() == QEvent::MouseButtonPress) {
    qDebug()<<"1";
    FuncOpenReader();
    return true;
    }
    else {
    return false;
    }
    }
    else {
    return QWidget::eventFilter(watched, event);
    }
    }

相关推荐
秋田君3 小时前
Qt 5.12.8 下载与安装教程(附网盘资源)
开发语言·qt
郝学胜-神的一滴4 小时前
Qt 高级开发 019:从零定制登录窗口按钮、Logo 样式与交互悬浮效果
开发语言·c++·qt·程序人生·交互·用户界面
YY&DS5 小时前
Qt Designer 自定义控件已提升后,如何修改提升类
开发语言·qt
爱吃生蚝的于勒6 小时前
QT开发第二章——信号和槽
c语言·开发语言·c++·qt
宏笋8 小时前
qss/css 样式中margin和padding的作用和区别
css·qt
读书札记202218 小时前
Qt界面卡死问题探讨及解决方法
qt
bug和崩溃我都要1 天前
Qt 封装 libmpv 全功能视频播放器开发指南
开发语言·qt·音视频
郝学胜-神的一滴1 天前
Qt 高级开发 018:复刻经典登录界面布局与窗口美化全解析
开发语言·c++·qt·程序人生·用户界面
小新1101 天前
qt creator 将qInfo的输出日志写入日志文档,方便查看
开发语言·qt
hssfscv1 天前
QT的学习记录1
开发语言·qt·学习