在已經使用Designer生成對話框(.ui文件)和建立main.cpp文件的情況下,可以利用qmake自動生成工程文件(.pro文件)和makefile文件,而makefile文件又能調用user interface compiler(uic),uic工具將.ui文件轉換成C++代碼並存儲到相應的ui_***.h文件中,這里的“***”就是此前建立的對話框的名字。
本文以《C++ GUI Qt4 編程(第二版)》中第二章第三節《快速設計對話框》中的內容為例進行說明。即使沒有閱讀過該書,同樣可以閱讀並理解以下內容。
一、設計對話框並建立main.cpp
首先用Qt Designer設計一個對話框,假設對話框的名字是GotoCell,對話框保存在gotocell目錄下(此例中路徑:F:\GUI\gotocell),文件名為gotocelldialog.ui.
然后在同一目錄下新建一個main.cpp,新建的方法很簡單,只需新建一個txt文件,然后重命名為main.cpp即可,注意不可保留原來的后綴名“.txt”。然后使用你所喜歡的代碼編輯器在該文件中編輯代碼,本例中輸入以下代碼:
1 #include <QApplication> 2 #include <QDialog> 3 4 #include "ui_gotocelldialog.h" 5 6 int main(int argc, char *argv[]) 7 { 8 QApplication app(argc, argv); 9 10 Ui::GotoCellDialog ui; 11 QDialog *dialog = new QDialog; 12 ui.setupUi(dialog); 13 dialog->show(); 14 15 return app.exec(); 16 }
如果所建立的對話框名字不是GotoCell,在代碼中相應位置做修改即可。
至此,准備工作完成,下面調用qmake。
二、調用qmake生成.ui文件和makefile文件
調用qmake需要在命令窗口中進行。命令窗口的進入:運行——輸入“cmd”后按確定,彈出如下示界面:
qmake需要利用此前建立的ui文件和cpp文件,所以必須先進入這兩個文件的存放目錄gotocell才能使qmake正常運行,此前已說明gotocell的路徑:F:\GUI\gotocell。下面講述如何進入gotocell文件夾。
在命令窗口中輸入“F:”(省去雙引號,下同)后按回車,顯示“F:\>”,表明已進入F盤。然后輸入“cd F:\GUI\gotocell”,“cd”是進入命令,一個空格后緊接的是要進入的目錄路徑。回車后顯示“F:\GUI\gotocell>”表明已成功進入gotocell文件夾。此時可以調用qmake。
qmake命令有不同的形式,對應不同的功能,建立工程文件.pro文件和makefile文件的命令分別是“qmake -project”和“qmake gotocell.pro”,注意第一個命令中“-”之前是有一個空格的。在命令窗口中輸入“qmake -project”(也可復制粘貼),回車,然后再輸入“qmake gotocell.pro”,回車。注意這兩個命令的先后順序不能互換,因為要先通過第一個命令建立工程文件gotocell.pro才可能有命令“qmake gotocell.pro”的實現。
執行以上命令后可以看到gotocell目錄下多了幾個文件(原來只有main.cpp和gotocelldialog.ui):

