欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

K02-02整理一下目錄吧

版權(quán)聲明

作者: 女兒叫老白
轉(zhuǎn)載請注明出處!

網(wǎng)頁版課程源碼 提取碼:1uy7

成都創(chuàng)新互聯(lián)是一家專業(yè)從事成都網(wǎng)站設(shè)計、做網(wǎng)站、網(wǎng)頁設(shè)計的品牌網(wǎng)絡(luò)公司。如今是成都地區(qū)具影響力的網(wǎng)站設(shè)計公司,作為專業(yè)的成都網(wǎng)站建設(shè)公司,成都創(chuàng)新互聯(lián)依托強大的技術(shù)實力、以及多年的網(wǎng)站運營經(jīng)驗,為您提供專業(yè)的成都網(wǎng)站建設(shè)、營銷型網(wǎng)站建設(shè)及網(wǎng)站設(shè)計開發(fā)服務(wù)!

引言

   前幾天,在使用Qt編程時,為項目增加了幾個ui文件。偶然看一下源代碼目錄,發(fā)現(xiàn)源代碼目錄下的臨時文件和臨時目錄太多了,簡直雜亂不堪,雖然我們的代碼是通過svn管理的,提交時有過濾設(shè)置,這些臨時文件不會被入庫,但是有時候需要備份一下源代碼目錄并打包,如果帶著這么多臨時文件(文件尺寸還是非常大的),那可太不方便了。所以今天我們就講一下該如何通過pro文件的配置來整理源代碼目錄。

正文

  先不忙,我們順便講一下為項目添加界面(ui)的方法。大概分為四步:
    1, 使用designer繪制ui文件并保存。
    2, 編寫ui的派生類。
    3, 將相關(guān)文件添加到pro。
    4, 使用派生類
    我們分步驟講解。
    第一步,使用designer繪制某對話框資源文件(.ui),請注意,對話框類名:CDialogBase,ui文件名:dialogbase.ui。
    這兩個名稱請仔細記下,因為后面會用到。

    第二步,我們編寫ui的派生類:

代碼清單:
#ifndef DIALOG_H
#define DIALOG_H

#include "ui_dialogbase.h" // 頭文件名稱來自: dialogbase.ui ---> ui_dialogbase.h

// 第一個父類的名稱來自ui文件中對話框的類名:對象查看器中的類名
// 第二個父類的名稱來自ui文件中對話框基類的名稱(objeceName屬性): CDialogBase
class CDialog : public QDialog, public Ui::CDialogBase
{
public:
CDialog(QWidget* pParent);
~CDialog();
};

#endif
復(fù)制代碼

    請注意上文中,#include "ui_dialogbase.h"。
    該頭文件就用到了我們剛才保存界面文件時的文件名” dialogbase.ui”,Qt的uic命令將該ui文件轉(zhuǎn)換為ui頭文件:“ui_dialogbase.h”,即 “ui_” 加上”dialogbase”共同拼接成了”ui_dialogbase.h”。
    在class CDialog的定義處,我們編寫了多重派生,第一個基類是Qt的QDialog,因為我們在designer中繪制時就是用的QDialog,第二個類看著是否有些面熟?答對了,我們剛才要求大家記住的類名稱就是CDialogBase,而Qt在使用uic命令轉(zhuǎn)換時會為對話框自動生成一個命名空間Ui,這個基類CDialogBase就在該命名空間內(nèi)部定義,所以,我們第二個基類是:Ui::CDialogBase。
    另外,請大家一定要注意,把Qt的基類寫在前面,原因是:如果我們的CDialog需要使用Q_OBJECT宏,該宏展開時會用到Qt的基類(QObject)的一些接口,而編譯器認為這些接口只能從第一個基類中查找。所以,請把Qt的基類寫在前面。
    下面給出CDialog的實現(xiàn)文件:dialog.cpp:

代碼清單:
/*! \file: dialog.h
\brief 示例實現(xiàn)文件

\author 星點課堂:女兒叫老白
\Date 2018/9
*/
#include "dialog.h"

CDialog::CDialog(QWidget* pParent) : QDialog(pParent)
{
setupUi(this);

}

CDialog::~CDialog()
{

}
復(fù)制代碼

    dialog.cpp比較簡單,我們不做過多討論,唯一需要注意的一點就是在構(gòu)造函數(shù)中一定要調(diào)用setupUi(this);否則界面無法正常顯示。
    第三步,將相關(guān)文件添加到pro。我們目前添加了一個界面文件(dialogbaes.ui),添加了CDialog類的定義(.h)和實現(xiàn)文件(.cpp)。那么我們把他們添加到pro:

代碼清單:
QT += widgets

FORMS += dialogbase.ui

HEADERS += ks02_02.pro \
dialog.h

SOURCES += main.cpp \
dialog.cpp
復(fù)制代碼

    上述代碼中,F(xiàn)ORMS配置項用來描述項目中用到的ui文件,HEADERS和SOURCES兩個配置項在前面章節(jié)介紹過。如果要使用界面,請確保QT+=widgets正確配置。

    第四步,我們在代碼中使用CDialog。我們需要先包含CDialog的頭文件(dialog.h),然后在代碼中定義CDialog的對象,然后調(diào)用其接口:

代碼清單:
/*! \file: main.cpp
\brief mian()函數(shù)的實現(xiàn)文件

\author 星點課堂:女兒叫老白
\Date 2018/8
*/
#include <QApplication>

#include <iostream>

#include "qglobal.h"
#include "dialog.h"

using std::cout;
using std::endl;

int main(int argc, char * argv[])
{
Q_UNUSED(argc);
Q_UNUSED(argv);

    QApplication app(argc, argv);

    CDialog dlg(NULL);
    dlg.exec();
    return 0;

}
復(fù)制代碼

    至此我們?yōu)轫椖刻砑咏缑娴墓ぷ骶徒Y(jié)束了。
    下面我們切入正題,通過pro來整理一下目錄。
    為了以后進行產(chǎn)品化開發(fā),我們這里引入環(huán)境變量,pro中的所有路徑都通過環(huán)境變量來間接設(shè)置。我們引入一個“TRAINDEVHOME”的環(huán)境變量,它指向我們代碼的src的上級目錄。這樣,代碼的目錄結(jié)構(gòu)如下:

TRAINDEVHOME
------bin
------obj
------src
其中bin 、obj、src都是TRAINDEVHOME的子目錄。
在pro中使用環(huán)境變量的語法:$$(環(huán)境變量)。
比如:$$(TRAINDEVHOME)

代碼清單:
OBJECTS_DIR = $(TRAINDEVHOME)/obj/chapter02/ks02_02

DESTDIR = $(TRAINDEVHOME)/bin

MOC_DIR = $(OBJECTS_DIR)/moc
UI_DIR = $(OBJECTS_DIR)/ui
復(fù)制代碼

    在上述pro的配置中,OBJECTS_DIR是臨時文件目錄,我們將其設(shè)置到obj下對應(yīng)的子目錄。
    DESTDIR是目標文件存放目錄,就是最終生成的exe存放目錄,我們將其放置到TRAINDEVHOME的bin目錄。
    Qt的moc和uic命令生成的臨時文件分別放置到OBJECTS_DIR下面的moc和ui子目錄。

    每次修改pro之后,請大家再重新執(zhí)行qmake以便更新相應(yīng)的Makefile文件,如果需要更新VisualStudio的IDE中的項目文件,則需要執(zhí)行qmake –tp  vc。
    然后,就可以重新編譯程序了。

結(jié)語

   本節(jié)課程中,我們講了為項目添加ui文件的過程,簡單匯總知識點如下:

. 如果需要使用界面(ui),pro中務(wù)必添加:
QT +=widgets
. 派生類CDialog頭文件中, 包含ui頭文件的拼寫規(guī)則和兩個基類的順序以及拼寫。
#include "ui_dialogbase.h" // 頭文件名稱來自: dialogbase.ui ---> ui_dialogbase.h
class CDialog : public QDialog, public Ui::CDialogBase
. 派生類的構(gòu)造函數(shù)中一定要調(diào)用setupUi(this);
. 在pro中使用環(huán)境變量,通過引用環(huán)境變量設(shè)置相關(guān)目錄。
. 環(huán)境變量在使用時應(yīng)該用下列語法:
$$(環(huán)境變量)
. MOC_DIR:用來存放qt的moc命令生成的臨時文件。
. UI_DIR:用來存放qt的uic命令生成的臨時文件。當項目中包含.ui文件時需要用到。
. FORMS:用來描述項目中包含的.ui文件列表
OK,總結(jié)就到這里,祝大家工作愉快!


《Qt入門與提高-GUI產(chǎn)品開發(fā)》目錄請?zhí)砑渔溄用枋?br/>上一節(jié):KS02-01 通過簡單exe介紹pro基本配置請?zhí)砑渔溄用枋?br/>下一節(jié):KS02-03 加點料-增加一張圖片

分享名稱:K02-02整理一下目錄吧
鏈接URL:http://www.chinadenli.net/article48/ieooep.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站標簽優(yōu)化移動網(wǎng)站建設(shè)定制開發(fā)ChatGPT外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)