自学内容网 自学内容网

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

1. 介绍

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

2. 代码

#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); // 发射显示状态改变信号
    }
};

原文地址:https://blog.csdn.net/yangshuoSB/article/details/140456687

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!