翻譯|使用教程|編輯:鮑佳佳|2020-12-18 14:30:25.627|閱讀 664 次
概述:本文主要介紹了什么是Qt,記憶其內(nèi)在的一些架構(gòu),比如集成開(kāi)發(fā)環(huán)境Qt creator,GUI模塊:Qt quick,以及構(gòu)建系統(tǒng)Cmake等。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
什么是Qt?
Qt是用于臺(tái)式機(jī),嵌入式和移動(dòng)設(shè)備的跨平臺(tái)應(yīng)用程序開(kāi)發(fā)框架。支持的平臺(tái)包括Linux,OS X,Windows,VxWorks,QNX,Android,iOS,BlackBerry,Sailfish OS等。
Qt本身不是一門編程語(yǔ)言。它是一個(gè)用C++編寫的框架。一個(gè)預(yù)處理器,MOC(Meta-Object Compiler,元對(duì)象編譯器),被用來(lái)擴(kuò)展C++語(yǔ)言的功能,比如信號(hào)和插槽。在編譯步驟之前,MOC解析用Qt-extended C++編寫的源文件,并從中生成符合標(biāo)準(zhǔn)的C++源文件。因此,框架本身和使用它的應(yīng)用程序/庫(kù)可以被任何標(biāo)準(zhǔn)兼容的C++編譯器編譯,如Clang、GCC、ICC、MinGW和MSVC。
Qt公司和Qt項(xiàng)目
Qt的開(kāi)發(fā)是由挪威程序員Eirik Chambe-Eng和Haavard Nord于1990年開(kāi)始的。他們的公司Trolltech出售Qt許可證并提供支持,多年來(lái)經(jīng)歷了幾次收購(gòu)。如今,前Trolltech被命名為The Qt Company,是芬蘭Digia Plc.的全資子公司。雖然The Qt Company是Qt背后的主要推動(dòng)者,但現(xiàn)在Qt是由一個(gè)更大的聯(lián)盟開(kāi)發(fā)的。Qt項(xiàng)目。它由全球許多公司和個(gè)人組成,并遵循擇優(yōu)的管理模式。
每一個(gè)愿意的人,無(wú)論是個(gè)人還是公司,都可以加入到這個(gè)努力中來(lái)。有很多方法可以為Qt項(xiàng)目做出貢獻(xiàn),例如為框架編寫代碼或文檔,報(bào)告錯(cuò)誤。
正版授權(quán)
Qt可以通過(guò)各種許可獲得:可以通過(guò)Qt官方正式授權(quán)的慧都科技公司獲取正版授權(quán),現(xiàn)其推出17周年慶活動(dòng),價(jià)購(gòu)買正版授權(quán)還送蘋果手機(jī)電腦等豪禮!
構(gòu)建系統(tǒng)
雖然任何構(gòu)建系統(tǒng)都可以和Qt一起使用,但Qt自帶qmake。它是一個(gè)跨平臺(tái)的前端,用于平臺(tái)原生構(gòu)建系統(tǒng),如GNU Make、Visual Studio和Xcode。Qt升級(jí)到6后構(gòu)建系統(tǒng)就變?yōu)镃Make了。點(diǎn)擊查看詳情>>
集成開(kāi)發(fā)環(huán)境
Qt自帶集成開(kāi)發(fā)環(huán)境(IDE),名為Qt Creator。它可以在Linux、OS X和Windows上運(yùn)行,并提供智能代碼完成、語(yǔ)法高亮、集成幫助系統(tǒng)、調(diào)試器和剖析器集成,還集成了所有主要的版本控制系統(tǒng)(如git、Bazaar)。除了Qt Creator外,Windows上的開(kāi)發(fā)人員還可以使用Qt的Visual Studio插件。也可以使用其他的IDE(如KDE上的KDevelop)。但當(dāng)然絕不是必須使用任何IDE。
國(guó)際化和本地化
Qt對(duì)國(guó)際化(i18n)和本地化(l10n)的支持非常出色。Qt Linguist 工具及其配套的 lupdate, lrelease 和 lconvert 可以讓您輕松地將應(yīng)用程序翻譯成本地化語(yǔ)言。Qt支持目前使用的大多數(shù)語(yǔ)言和書寫系統(tǒng)。
小部件
使用Qt,GUI可以直接用C++編寫,使用其Widgets模塊。Qt還提供了一個(gè)名為Qt Designer的交互式圖形工具,它可以作為基于Widgets的GUI的代碼生成器。Qt Designer可以獨(dú)立使用,但也可以集成到Qt Creator中。
QtQuick
用Qt編寫GUI的另一種方法是使用QtQuick模塊。使用QtQuick的GUI是用QML編寫的。QML是一種聲明性的對(duì)象描述語(yǔ)言,它集成了Javascript進(jìn)行程序化編程。QtQuick為使用QML開(kāi)發(fā)GUI提供了必要的模塊。可以只用QML編寫整個(gè)應(yīng)用程序,但通常只有GUI是用QML編寫的,應(yīng)用程序的后臺(tái)是用C++實(shí)現(xiàn)的(參見(jiàn)整合QML和C++)。另外Qt Creator還集成了QtQuick GUI設(shè)計(jì)器和剖析器。
更多模塊
Qt不僅僅是一個(gè)GUI工具包。它為網(wǎng)絡(luò),數(shù)據(jù)庫(kù),OpenGL,Web技術(shù),傳感器,通信協(xié)議(藍(lán)牙,串行端口,NFC),XML和JSON處理,打印,PDF生成等領(lǐng)域的跨平臺(tái)開(kāi)發(fā)提供模塊。
Qt常用組件:
語(yǔ)言綁定
盡管使用Qt的應(yīng)用程序通常是用C ++編寫的,并且存在與其他語(yǔ)言的QML綁定。這些不是Qt的一部分,而是由各種第三方提供的。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自: