0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何將Qt Design Studio工程轉(zhuǎn)換為Qt Creator工程

我快閉嘴 ? 來源:嵌入式小生 ? 作者:嵌入式小生 ? 2022-09-19 09:09 ? 次閱讀


在實(shí)際QML使用中,可能會存在多人協(xié)同開發(fā)或者C++與QML混合開發(fā)的使用場景,這時候可能會使用不同的軟件,多數(shù)情況下是Qt Creator和Qt Design Studio兩款軟件協(xié)同使用。(畢竟很多時候做出一個漂亮的軟件外觀比實(shí)現(xiàn)軟件的功能要繁雜一些)

注:從Qt Design Studio 2.3.0開始,Qt Design Studio項目向?qū)0迳傻捻椖靠梢杂?code style="font-size:14px;padding:2px 4px;margin-right:2px;margin-left:2px;background-color:rgba(27,31,35,.05);font-family:'Operator Mono', Consolas, Monaco, Menlo, monospace;color:rgb(239,112,96);">CMake構(gòu)建。意味著可以在Qt Creator中打開CMakeLists.txt項目文件,繼續(xù)開發(fā)項目。

所以,如果熟悉CMake構(gòu)建系統(tǒng),QtCreator和Qt Design Studio之間轉(zhuǎn)換就非常方便。本文假設(shè)使用qmake作為構(gòu)建系統(tǒng),下文將描述如何將Qt Design Studio工程轉(zhuǎn)換為Qt Creator工程。

在Qt Design Studio創(chuàng)建用戶界面非常方便。如果想要在Qt Creator中使用Qt Design Studio的工程進(jìn)行應(yīng)用程序開發(fā),則需要添加四個文件:

(1)工程配置文件(CMakeLists.txt或者.pro

(2)C++程序文件(.cpp)

(3)資源文件

(4)將應(yīng)用程序部署到設(shè)備所需的代碼

首先,我們使用Qt Creator向?qū)0鍋韯?chuàng)建使用qmake構(gòu)建系統(tǒng)構(gòu)建的Qt Quick應(yīng)用程序,然后將源文件從Qt Design Studio項目路徑復(fù)制到應(yīng)用程序項目中。

使用項目配置文件中(.pro)的RESOURCES選項,自動將所有QML文件和相關(guān)資產(chǎn)添加到Qt資源集合文件(.qrc)中。注意:大文件應(yīng)作為外部二進(jìn)制資源包含,不要將它們編譯進(jìn)二進(jìn)制文件中。

創(chuàng)建向?qū)詣訉?code style="font-size:14px;padding:2px 4px;margin-right:2px;margin-left:2px;background-color:rgba(27,31,35,.05);font-family:'Operator Mono', Consolas, Monaco, Menlo, monospace;color:rgb(239,112,96);">QML_IMPORT_PATH選項添加到項目配置文件中,用于指定QML的導(dǎo)入路徑。只有在多個子目錄中包含QML文件時,才需要指定該路徑。

然后,我們可以使用C++源文件中的QQuickView類在應(yīng)用程序啟動時顯示主QML文件。

Qt Quick Studio Components模塊在安裝Qt Design Studio時會自動安裝。如果我們想在Qt Creator中編輯項目中的模塊使用Qt Quick Studio Components或Effects,必須構(gòu)建該模塊并將其安裝到Qt中才能構(gòu)建項目。

轉(zhuǎn)換過程演示

本小節(jié)描述如何將具有.qmlproject文件的項目轉(zhuǎn)換為.pro項目的示例。轉(zhuǎn)換步驟如下:

(1)運(yùn)行啟動QtCreator軟件。依次選擇 File->New Project->Application(Qt)->Qt Quick Application->Choose:

a45d3628-37b0-11ed-ba43-dac502259ad0.png

(2)在Build System選擇中,選擇qmake作為構(gòu)建和運(yùn)行項目的構(gòu)建系統(tǒng),然后選擇Next:

a47ed670-37b0-11ed-ba43-dac502259ad0.png

(3)按照創(chuàng)建向?qū)У闹甘就瓿身椖康膭?chuàng)建。

(4)在Qt Design Studio中,依次點(diǎn)擊『File』->『Generate QRC Resource File』選項生成資源文件。

a49e9e42-37b0-11ed-ba43-dac502259ad0.png

(5)在文件資源管理器中,將Qt Design Studio項目目錄中的所有文件復(fù)制到Qt Creator應(yīng)用程序項目目錄中的一個子目錄中(將該目錄命名為qml,需要提前創(chuàng)建)。

(6)打開應(yīng)用程序項目文件(.pro),并編輯RESOURCES選項的值,添加如下文本:

RESOURCES+=
$$files(qml/*)

(7)在(.pro)文件中編輯QML_IMPORT_PATH選項值,用于指定QML導(dǎo)入路徑:

QML_IMPORT_PATH=qml/imports

(8)選擇Build-> Run qmake將RESOURCES選項應(yīng)用于構(gòu)建配置

(9)打開main.cpp文件將QQmlApplicationEngine對象(一般使用QtCreaotr創(chuàng)建的工程,其默認(rèn)在main()函數(shù)中使用的是QQmlApplicationEngine)替換為QQuickView對象(如果是在qml中使用Window等視圖類型作為根目錄包含的qml文件,則不用替換):

QQuickViewview;
view.engine()->addImportPath("qrc:/qml/imports");
view.setSource(QUrl("qrc:/qml/ProgressBar.ui.qml"));
if(!view.errors().isEmpty())
return-1;
view.show();

(注:上述代碼為一個示例)

通過以上步驟,則完成Qt Design Studio向QtCreator工程的轉(zhuǎn)換。通過該種方式,我們可以使用QtCreator做開發(fā),Qt Design Studio做設(shè)計了。(新工程,文件資源的引入路徑可能會被修改,將他們改成正確的引入路徑即可)

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • C++
    C++
    +關(guān)注

    關(guān)注

    21

    文章

    2090

    瀏覽量

    73404
  • Studio
    +關(guān)注

    關(guān)注

    2

    文章

    188

    瀏覽量

    28586
  • QTcreator
    +關(guān)注

    關(guān)注

    0

    文章

    11

    瀏覽量

    6784

原文標(biāo)題:如何將UI項目轉(zhuǎn)換為QtCreator應(yīng)用項目

文章出處:【微信號:嵌入式小生,微信公眾號:嵌入式小生】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    編寫第一個QT程序

    學(xué)習(xí)一種編程語言或編程環(huán)境,通常會先編寫一個“Hello World”程序。我們也用 Qt Creator 編寫一個“Hello World”程序,以初步了解 Qt Creator 設(shè)
    發(fā)表于 11-21 10:41 ?977次閱讀

    Linux系統(tǒng)中搭建Qt Creator開發(fā)環(huán)境

    Linux開發(fā)板中配置Qt運(yùn)行環(huán)境一文中介紹了如何將Qt移植到Linux開發(fā)板上,接下來就需要編寫Qt應(yīng)用程序,經(jīng)過交叉編譯后,Qt應(yīng)用程序
    發(fā)表于 11-29 14:06 ?2394次閱讀

    TLT507-Qt工程編譯說明

    TLT507-Qt工程編譯說明
    的頭像 發(fā)表于 01-26 09:37 ?925次閱讀
    TLT507-<b class='flag-5'>Qt</b><b class='flag-5'>工程</b>編譯說明

    qt creator編譯QT5應(yīng)用

    qt-creator-opensource-linux-x86_64-4.9.0.run安裝:./qt-creator-opensource-linux-x86_64-4.9.0.run3.使用qtcreator
    發(fā)表于 05-05 15:17

    新手Qt_CreatoR_入門第一必看

    新手Qt_CreatoR_入門第一必看
    發(fā)表于 10-30 08:55 ?17次下載
    新手<b class='flag-5'>Qt_CreatoR</b>_入門第一必看

    qt+creator系列的教程

    qt+creator系列的教程
    發(fā)表于 10-30 08:58 ?55次下載
    <b class='flag-5'>qt+creator</b>系列的教程

    Qt Creator的詳細(xì)資料簡介

    本文檔的主要內(nèi)容詳細(xì)介紹的是Qt Creator的詳細(xì)資料簡介包括了:1 Qt Creator的下載和安裝2 Qt
    發(fā)表于 12-26 16:59 ?33次下載
    <b class='flag-5'>Qt</b> <b class='flag-5'>Creator</b>的詳細(xì)資料簡介

    Qt Creator快速入門教程之Qt對象模型與容器類的詳細(xì)資料說明

    Qt Creator快速入門教程之Qt對象模型與容器類的詳細(xì)資料說明包括了:1 對象模型,2 容器類,3 正則表達(dá)式,4 小結(jié)
    發(fā)表于 12-31 10:44 ?24次下載
    <b class='flag-5'>Qt</b> <b class='flag-5'>Creator</b>快速入門教程之<b class='flag-5'>Qt</b>對象模型與容器類的詳細(xì)資料說明

    Qt Designer、Qt Quick Designer和Qt Creator應(yīng)用程序有什么區(qū)別?

    不管是Qt新手還是開發(fā)過qt的群體來說,對Qt Designer、Qt Quick Designer、Qt
    的頭像 發(fā)表于 03-17 09:40 ?7096次閱讀

    Qt Creator系列教程分享

    Qt Creator 系列教程.pdf
    發(fā)表于 09-13 14:26 ?11次下載

    如何在Qt Design Studio中創(chuàng)建連接和狀態(tài)

    Qt Design Studio中可以使用對話框創(chuàng)建應(yīng)用軟件UI的動態(tài)行為。在該工具中,有兩種方式創(chuàng)建應(yīng)用軟件動態(tài)行為。
    的頭像 發(fā)表于 09-16 09:54 ?2216次閱讀

    Qt Design Studio工具下創(chuàng)建設(shè)計工程

    在QML開發(fā)中,許多小伙伴喜歡Qt Creator這款工具,集C++ Widget 和 Qt Quick設(shè)計于一體。
    的頭像 發(fā)表于 09-20 09:10 ?3135次閱讀

    TI AM5728 Qt工程編譯、GPU核心使用說明

    此案例來源于:創(chuàng)龍科技測試板卡為:TISitara系列AM5728+XilinxArtix-7FPGA開發(fā)板前言本文檔主要說明如何將已有Qt工程進(jìn)行編譯,生成可在評估板上正常運(yùn)行的ARM端Qt
    發(fā)表于 05-24 09:47 ?6次下載

    3562-Qt工程編譯說明

    本文檔主要說明如何將已有 Qt 工程進(jìn)行編譯,生成可在評估板上正常運(yùn)行的 ARM 端 Qt 程序鏡像。 Qt 開發(fā)環(huán)境主要包括
    的頭像 發(fā)表于 03-05 09:19 ?382次閱讀
    3562-<b class='flag-5'>Qt</b><b class='flag-5'>工程</b>編譯說明

    Qt上位機(jī)開發(fā)實(shí)戰(zhàn)案例

    Qt Creator是一個用于Qt開發(fā)的輕量級跨平臺集成開發(fā)環(huán)境。 Qt Creator可帶來兩大關(guān)鍵益處: 提供首個專為支持跨
    的頭像 發(fā)表于 03-13 12:31 ?1999次閱讀
    <b class='flag-5'>Qt</b>上位機(jī)開發(fā)實(shí)戰(zhàn)案例