获取qt窗口的三种变化状态的事件,最小化、正常、最大化

/*重写该函数*/
void MainWindow::changeEvent(QEvent *event)
{
    if(QEvent::WindowStateChange == event->type())
    {
        QWindowStateChangeEvent * stateEvent = dynamic_cast<QWindowStateChangeEvent*>(event);
        if(Q_NULLPTR != stateEvent)
        {
            if(this->isMinimized())
            {
                qDebug()<<"最小化";
            }
            else if(this->isMaximized())
            {
                qDebug()<<"最大化";
            }
            else if(this->windowState()==Qt::WindowNoState)
            {
                qDebug()<<"正常";
            }
        }
    }
}

 

posted @ 2023-07-11 14:12  雾枫  阅读(826)  评论(0编辑  收藏  举报