本文主要內容:
1. 純代碼編寫hello word程序及代碼解釋
2. 軟件如何在本地運行
3. 設置應用程序圖標
純代碼編寫hello word程序及代碼解釋
(1)建立一個空項目(其他項目中的Empty qmake Project)項目命名爲helloword。建立後的項目會包含一個helloword.pro文件,該文件爲該項目的項目文件。
.pro文件的作用:
(1)可以指定項目的特殊版本(比如:正式版、試用版)、對一些特殊功能模塊(比如:加密狗)進行限制等。
(2)指定查看解決依賴關係的目錄列表,當包含文件時使用。
(3) 指定UI文件(參考: Qt Designer Manual)在編譯前被uic處理。所有的構建這些UI文件所需的依賴、頭文件和源文件都會自動被添加到項目中。
(4)指定項目中所有的頭文件。
(5)指定鏈接到項目中的庫列表。如果使用Unix -l (library) 和 -L (library path) 標誌,在Windows上qmake正確處理庫(也就是說,將庫的完整路徑傳遞給鏈接器),庫必須存在,qmake會尋找-l指定的庫所在的目錄。
(6)指定所有中間文件.o(.obj)放置的目錄。
.pro文件的作用很大,本人也只是從網上搜集了幾種常用的幾種功能。
具體實現可參照:https://blog.csdn.net/caomin1hao/article/details/80388523
(2)往helloword.pro文件中添加代碼
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
//注意不需要加分號。
//如果qt版本大於4,添加widgets模塊,爲了保持與qt4的兼容性。這也體現了.pro文件的作用。
(3)項目中添加源文件mian.cpp
.cpp文件的作用:
一句話:類的定義放在.h文件中,而類的實現放在cpp文件中。
如果深究的話可以參考:https://blog.csdn.net/lwb102063/article/details/52068212
(4)mian.cpp添加代碼
#include <QApplication>
#include<QDialog>
#include<QLabel> //前三行包含頭文件,在qt中用的類都是別人封裝好的直接在頭文件中包括然後調用就ok。
int main(int argc, char *argv[])
{
QApplication a(argc, argv); //新建一個QApplication對象a,就是大的程序框。
QDialog w; //新建一個QDialog文本框對象w。在運行結果中是隱藏的。
w.resize(400,400); //文本框的resize爲high=400px;wide=400px。
QLabel label(&w); //新建一個QLabel對象,並將QDialog對象作爲參數,表明文本框爲他的父框。
label.move(100,100); //label在w中的位置(move),默認爲左上角(0,0)。
label.setText(QObject::tr("Hello Word!你好,我是大學生")); //設置label內容
w.show(); //顯示label內容
return a.exec();
}
(5)運行結果
軟件如何在本地運行
編譯完代碼後會產生.exe應用程序。此時不能直接打開,需要把相應的支持程序.dll格式的文件複製到該文件夾下,然後才能運行,或者給別人下載使用。而自己在本地打開時每次都複製太麻煩。可以配置路徑。原理:配置好路徑後,缺少的文件系統會自動調用。
系統變量中的path添加路徑,路徑爲qt安裝路徑包含.dll文件的文件夾。
設置應用程序圖標
(1)helloword.pro文件中添加代碼
RC_ICONS=myico.ico //myico圖片名
(2)把.ico格式的圖片複製到與.exe同文件夾中,命名爲myico.ico(注意此處圖片必須爲.ico格式,改格式的不行)。