QT多個ui文件使用


在使用QT做應用程序的時候幾乎都會用到比較多的對話框,下面內容講解下如何使用多個ui文件進行設計。注:下面使用的是Ubuntu16.04下的QT5

首先先建立一個工程,編譯后結果如下:

 

上面只有一個按鈕,現在我們新建一個ui,然后點擊該按鈕來調用新建的ui

 

 

 

 

 

 然后一路默認就可以來

現在我們需要在mainwindow.h文件中定義一個剛才新建的對象:

頭文件中包含ui類的頭文件

#include "dialog.h"

然后在private:里面定義一個對象:

Dialog dia;

 

 

 然后在按鈕槽函數中添加

dia.exec();

 

 

 編譯一下就后運行點擊按鈕就會彈出剛才新建的窗口。

但現在問題是如何訪問窗口中的資源呢?

首先添加必要的頭文件,在mainwindow.h文件中包含兩個頭文件

#include "dialog.h"
#include "ui_dialog.h"

第一個是類的聲明,第二個是ui資源相關的頭文件

 

 

 接下來需要修改dialog.h文件中類的部分,最開始新建ui的時候默認新建的類中ui是私有屬性,現在由於其他類需要訪問這個類,所以此時需要將其屬性修改為公有。
如圖所示:

 

 

 然后在新建的ui界面文件中隨便放置一下控件。

現在回到mainwindow.cpp文件中,在按鈕的槽函數中寫:

void MainWindow::on_pushButton_clicked()
{
    dia.ui->pushButton->setText("CNN");
    
    dia.exec();
}

 

 

然后編譯,我們發現點擊按鈕后會彈出窗口,且窗口上的按鈕的文本變為了“CNN”

 

 這樣就可以訪問另一個ui中的控件了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM