【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); // 发射显示状态改变信号
    }
};
相关推荐
郝学胜-神的一滴14 小时前
OpenGL的glDrawElements函数详解
开发语言·c++·程序人生·游戏·图形渲染
moxiaoran575314 小时前
Go语言结构体
开发语言·后端·golang
wearegogog12314 小时前
基于C# WinForm实现的带条码打印的固定资产管理
开发语言·c#
Lvan的前端笔记14 小时前
python:深入理解 Python 的 `__name__ == “__main__“` 与双下划线(dunder)机制
开发语言·python
董世昌4115 小时前
什么是扩展运算符?有什么使用场景?
开发语言·前端·javascript
lsx20240615 小时前
C++ 重载运算符和重载函数
开发语言
刺客xs15 小时前
Qt------信号槽,属性,对象树
开发语言·qt·命令模式
2501_9216494915 小时前
免费获取股票历史行情与分时K线数据 API
开发语言·后端·python·金融·数据分析
尤物程序猿15 小时前
Java如何不建表完成各种复杂的映射关系(鉴权概念、区域概念、通用概念)
java·开发语言
Insight.16 小时前
背包问题——01背包、完全背包、多重背包、分组背包(Python)
开发语言·python