QStackedWidget添加,切換及刪除窗口

QStackedWidget添加,切換及刪除窗口

     QStackedWidget可以實現同一界面切換不同的窗口,直接切換就可以顯示不同子窗口的內容,可用於創建類似於QTabWidget提供的用戶界面。

添加窗口

    QLabel *pFirstPage= new QLabel(this);

    QLabel *pSecondPage = new QLabel(this);

    QLabel *pThirdPage = new QLabel(this);

 

    pFirstPage->setText(QStringLiteral("第一頁"));

    pSecondPage->setText(QStringLiteral("第二頁"));

    pThirdPage->setText(QStringLiteral("第三頁"));

 

     myfrm1 = new Form1(this);

     myfrm2 = new Form2(this);

 

     ui->m_pStackedWidget->addWidget(myfrm1);

     ui->m_pStackedWidget->addWidget(myfrm2);

 

     ui->m_pStackedWidget->addWidget(pFirstPage);

     ui->m_pStackedWidget->addWidget(pSecondPage);

     ui->m_pStackedWidget->addWidget(pThirdPage);

 

切換方法:

      ui->stackedWidget->setCurrentWidget(pThirdPage);

     ui->m_pStackedWidget->setCurrentWidget(myfrm1);

      ui->stackedWidget->setCurrentIndex(1);

 

刪除所有窗口

    for(int i = ui->m_pStackedWidget->count(); i >= 0; i--)

    {

        QWidget* widget = ui->m_pStackedWidget->widget(i);

        ui->m_pStackedWidget->removeWidget(widget);

        widget->deleteLater();

    }


備註:實戰示例,解疑答惑。

           --不間端地思考,實時地批判你的工作!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章