【Qt】QWidget在隐藏时,发送信号

1. 介绍

Qt中,QWidget隐藏时,默认不发送信号。需要重写hideEvent()函数实现。

2. 代码

c 复制代码
#include <QWidget>
class MyWidget : public QWidget
{
    Q_OBJECT
signals:
    void hiddenStateChanged(bool isHidden);

protected:
    void hideEvent(QHideEvent* event) override
    {
        QWidget::hideEvent(event);
        emit hiddenStateChanged(true); // 发射隐藏状态改变信号
    }
    void showEvent(QShowEvent* event) override
    {
        QWidget::showEvent(event);
        emit hiddenStateChanged(false); // 发射显示状态改变信号
    }
};
相关推荐
IvanCodes3 小时前
Python 数据处理(十三):JSON、CSV 与数据序列化
开发语言·python
aramae5 小时前
MySQL复合查询(8)
java·c语言·开发语言·后端·算法
qq_2518364577 小时前
springboot vue3 开发实现 拼豆管理系统
java·开发语言·ai编程
郑州光合科技余经理8 小时前
同城外卖小程序开发:下单成功后,后台导出能不能对上用户端状态
开发语言·前端·git·后端·uni-app·php·ai编程
知识分享小能手8 小时前
C++ 学习教程,从入门到精通,C++ 入门知识 — 完整知识点(1)
开发语言·c++·学习
+VX:Fegn08959 小时前
计算机毕业设计|基于springboot + vue旅游管理系统(源码+数据库+文档)
java·开发语言·vue.js·spring boot·课程设计
阿里嘎多学长9 小时前
2026-09-20 GitHub 热点项目精选
开发语言·程序员·github·代码托管
江湖人称菠萝包11 小时前
【Qt】《Qt 5.9 C++开发指南》笔记-Chapter9-Qt Charts
笔记·qt·qt5
扶尔魔ocy11 小时前
【QT android】环境安装及第一个QT项目
qt·andriod开发
weixin_3077791311 小时前
C++代码实现MATLAB中的ode23tb函数功能
开发语言·c++·算法·matlab