【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); // 发射显示状态改变信号
    }
};
相关推荐
小小测试开发3 分钟前
pytest 库用法示例:Python 测试框架的高效实践
开发语言·python·pytest
BUG弄潮儿12 分钟前
go-swagger标准接口暴露
开发语言·后端·golang
数字化顾问34 分钟前
Flink ProcessFunction 与低层级 Join 实战手册:实时画像秒级更新系统
java·开发语言
qq_339191141 小时前
go win安装grpc-gen-go插件
开发语言·后端·golang
疯狂吧小飞牛1 小时前
Lua中,表、元表、对象、类的解析
开发语言·junit·lua
owCode1 小时前
3-C++中类大小影响因素
开发语言·c++
兮动人1 小时前
Java 单元测试中的 Mockito 使用详解与实战指南
java·开发语言·单元测试
武子康2 小时前
Java-151 深入浅出 MongoDB 索引详解 性能优化:慢查询分析 索引调优 快速定位并解决慢查询
java·开发语言·数据库·sql·mongodb·性能优化·nosql
ajassi20002 小时前
开源 C++ QT QML 开发(二十一)多媒体--视频播放
c++·qt·开源
患得患失9493 小时前
【Turborepo】【Next】 Turborepo + Next.js 前后端精简搭建笔记(带官网)
开发语言·javascript·笔记