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);
    }
    }

相关推荐
小小码农Come on3 小时前
QT qss样式表案例
qt
小温冲冲5 小时前
QPixmap 详解:Qt 中的高效图像处理类
开发语言·图像处理·qt
小温冲冲5 小时前
Qt实现图片缩放与拖拽查看功能(附源码)
qt
漂洋过海的鱼儿7 小时前
Qt-界面子类(1)
开发语言·qt
机器视觉知识推荐、就业指导8 小时前
Qt 元对象系统:机制、组成与典型用法
数据库·qt
少控科技8 小时前
QT新手日记035
开发语言·qt
青川学长8 小时前
Cursor + Qt Creator 混合开发指南
开发语言·qt
掘根9 小时前
【jsonRpc项目】RCP服务测试
qt·网络协议
老歌老听老掉牙11 小时前
Python+PyQt5 实现目录文件扫描与导出工具
python·qt·文件扫描
訫悦11 小时前
体验在Qt中简单使用C++20的协程
qt·c++20·协程