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

相关推荐
eggcode16 小时前
【Qt学习】Linux(ARM架构)在线安装Qt6.x
linux·qt·学习·arm
似水এ᭄往昔1 天前
【Qt】--Qt概述
开发语言·c++·qt
人还是要有梦想的1 天前
Qt WebEngine需要MSVC进行编译运行,QT如何用MSVC编译(包含64位和32位)
开发语言·qt·msvc
程序leo源1 天前
Qt界面优化详解
linux·c语言·开发语言·c++·qt·c#
郝学胜-神的一滴1 天前
Qt 高级开发 017:中文乱码
开发语言·c++·qt·程序人生·用户界面
誰能久伴不乏1 天前
【Qt 架构实战】从零手写工业级 Qt 日志系统:底层拦截与架构原理解析
qt·架构·日志
学习,学习,在学习1 天前
Modbus TCP 协议深度解析与 Qt 实战指南
网络·c++·qt·tcp/ip·modbus·qt5
Kelvin_Ngan1 天前
Qt vs2013 Qt modules设置无效
qt
一然明月2 天前
qt基本用法
开发语言·qt
代钦塔拉2 天前
Qt QThread最标准Worker线程用法(零崩溃、零内存泄漏)
qt