国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

cmake擴(kuò)展(1)——VS+CMake創(chuàng)建Qt項(xiàng)目

這篇具有很好參考價(jià)值的文章主要介紹了cmake擴(kuò)展(1)——VS+CMake創(chuàng)建Qt項(xiàng)目。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

創(chuàng)建項(xiàng)目

創(chuàng)建CMakeLists

#cmake最低版本
cmake_minimum_required(VERSION 3.10)
#項(xiàng)目名
project(regextool)

#查找所有*.h,*.ui,*.cpp文件,并存入SOURCES中
file(GLOB SOURCES "*.cpp" "*.ui" "*.h")

#開啟moc
set(CMAKE_AUTOMOC ON) 
#開啟ui功能
set(CMAKE_AUTOUIC ON) 
#查找Qt相關(guān)包
find_package(Qt5 COMPONENTS Core Widgets Gui REQUIRED)
#生成可執(zhí)行文件
add_executable(${PROJECT_NAME} WIN32 ${SOURCES})
#鏈接頭文件
target_include_directories(${PROJECT_NAME}
    PRIVATE
    "*.h")
#鏈接Qt相關(guān)庫(kù)
target_link_libraries(${PROJECT_NAME} Qt5::Core Qt5::Widgets Qt5::Gui)

生成項(xiàng)目文件

添加main.cpp文件(可以為空)后

CMakeLists目錄下運(yùn)行

cmake -S . -B build

打開項(xiàng)目

build目錄下運(yùn)行

cmake --open .

添加文件

類文件

項(xiàng)目右鍵->添加->新建項(xiàng)->C++類。設(shè)置好類名和路徑,點(diǎn)擊添加。

cmake擴(kuò)展(1)——VS+CMake創(chuàng)建Qt項(xiàng)目,cmake,cmake

cmake擴(kuò)展(1)——VS+CMake創(chuàng)建Qt項(xiàng)目,cmake,cmake

ui文件

項(xiàng)目右鍵->添加->新建項(xiàng)->Qt->Qt Widget Form File。設(shè)置好類名和路徑,點(diǎn)擊添加。

cmake擴(kuò)展(1)——VS+CMake創(chuàng)建Qt項(xiàng)目,cmake,cmake

關(guān)聯(lián)ui文件和類文件

由于此處添加的ui文件和類文件沒(méi)有關(guān)聯(lián),會(huì)導(dǎo)致編譯不通過(guò)(不知道是不是自己操作有誤)。所以需要在類文件中添加內(nèi)容。

*.h

//類外添加命名空間
QT_BEGIN_NAMESPACE
namespace Ui { class Form; }
QT_END_NAMESPACE

//類內(nèi)添加成員
private:
	Ui::Form *ui;

*.cpp

//包含頭文件,ui_類名.h
#include "ui_Form.h"

//構(gòu)造中初始化ui變量
RegexTool::RegexTool(QWidget * parent)
	:ui(new Ui::Form)
{
	ui->setupUi(this);
}

此時(shí)一個(gè)待ui的類就添加好了,可以在項(xiàng)目中使用了。

一些問(wèn)題

ui文件名

上面提到的ui文件類名為Form,這是創(chuàng)建Qt Widgets Form File文件默認(rèn)的類名,暫時(shí)沒(méi)有發(fā)現(xiàn)預(yù)設(shè)的操作。

不過(guò)我們可以通過(guò)創(chuàng)建后修改ui文件進(jìn)行修改:

<ui version="4.0">
 <author></author>
 <comment></comment>
 <exportmacro></exportmacro>
 <class>Form</class>
 <widget class="QWidget" name="Form">
  <property name="objectName">
   <string notr="true">Form</string>
  </property>
  <property name="geometry">
   <rect>
    <x>0</x>
    <y>0</y>
    <width>400</width>
    <height>300</height>
   </rect>
  </property>
  <property name="windowTitle">
   <string>Form</string>
  </property>
 </widget>
 <pixmapfunction></pixmapfunction>
 <connections/>
</ui>

可以將上面的ui文件內(nèi)容中第5行class屬性改成需要的名稱即可。

需要注意的是:<關(guān)聯(lián)ui文件和類文件>操作中的命名空間和類名也都需要同步調(diào)整。也就是用新類名替換原有的Form。

出現(xiàn)控制臺(tái)窗口

在一開始時(shí),CMakeLists文件中add_executable沒(méi)有添加WIN32配置,會(huì)導(dǎo)致每次運(yùn)行時(shí),除了ui窗口,還會(huì)彈出控制臺(tái)窗口。

快速方法

為了解決這個(gè)問(wèn)題,可以在右鍵->屬性->鏈接器->系統(tǒng)->子系統(tǒng),選擇窗口;

cmake擴(kuò)展(1)——VS+CMake創(chuàng)建Qt項(xiàng)目,cmake,cmake

然后再在高級(jí)->入口點(diǎn)輸入:mainCRTStartup

cmake擴(kuò)展(1)——VS+CMake創(chuàng)建Qt項(xiàng)目,cmake,cmake

這樣就可以解決這個(gè)問(wèn)題。

不過(guò),每當(dāng)重新生成項(xiàng)目文件后,都會(huì)被重置。

根本解決方法

在CMakeLists中add_executable中添加WIN32配置,這將會(huì)從默認(rèn)的控制臺(tái)程序改成ui程序。確保永久不會(huì)出現(xiàn)控制臺(tái)窗口文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-645664.html

到了這里,關(guān)于cmake擴(kuò)展(1)——VS+CMake創(chuàng)建Qt項(xiàng)目的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【QtQuick3D學(xué)習(xí)】使用Qt Design Studio設(shè)計(jì)UI并導(dǎo)入Qt Creator項(xiàng)目中使用——基于C++和Cmake

    【QtQuick3D學(xué)習(xí)】使用Qt Design Studio設(shè)計(jì)UI并導(dǎo)入Qt Creator項(xiàng)目中使用——基于C++和Cmake

    新版本中項(xiàng)目文件全部放在了一起,見(jiàn) 【QtQuick3D學(xué)習(xí)】使用Qt Creator創(chuàng)建Qt Design Studio項(xiàng)目測(cè)試運(yùn)行——基于C++和Cmake 【QtQuick3D學(xué)習(xí)】使用Qt Design Studio創(chuàng)建項(xiàng)目并使用Qt Creator打開測(cè)試運(yùn)行——基于C++和Cmake 這里測(cè)試前后端分離,即使用Qt Design Studio設(shè)計(jì)前端和交互邏輯,C++寫后

    2024年02月01日
    瀏覽(51)
  • 用Cmake快速生成vs工程

    用Cmake快速生成vs工程

    官方網(wǎng)址: https://cmake.org/download/ 打開官網(wǎng),根據(jù)自己需求下載所需文件。(本人是安裝在Windows10-x64平臺(tái)上,所以下文步驟均基于此平臺(tái)) 下載好后,雙擊點(diǎn)開,再按照如下步驟進(jìn)行操作: 點(diǎn)擊運(yùn)行 點(diǎn)擊Next 勾選 I accept....... ,再選擇Next 在Install Options處,一定要勾選 Add C

    2024年02月07日
    瀏覽(17)
  • VS2022 CMake報(bào)錯(cuò)解決小結(jié)

    VS2022 CMake報(bào)錯(cuò)解決小結(jié)

    目錄 一、問(wèn)題背景 二、問(wèn)題分析 三、問(wèn)題解決 ? ? ? ?VS2022中能夠跨平臺(tái)的工程類型就是CMake項(xiàng)目,一套代碼能跨windows/Linux/Mac多種操作系統(tǒng)。而實(shí)際使用時(shí),發(fā)現(xiàn)相關(guān)資料比較少,需要摸索一下。 ?碰到的問(wèn)題簡(jiǎn)述: ? 1、C++?Intellisense信息可能過(guò)時(shí),生成要刷新的CMake緩存

    2024年02月12日
    瀏覽(25)
  • 【libdatachannel】1 :cmake+vs2022 構(gòu)建

    【libdatachannel】1 :cmake+vs2022 構(gòu)建

    libdatachannel 是基于c++17實(shí)現(xiàn)的 cmake 鏈接openssl 可以參考【libcurl 】win32 構(gòu)建 Release版本 修改cmakelist 鏈接openssl1.1.*

    2024年02月06日
    瀏覽(46)
  • windows下Cmake配置vs2022工程

    windows下Cmake配置vs2022工程

    我電腦安裝的是vs2022但是 cmake的gui 沒(méi)有vs2022的選項(xiàng) 只有2019 而且選擇2019 生成編譯環(huán)境是錯(cuò)的 提示 “visual studio 16 2019 could not find any instance of visual studio.” 解決方法如下 先利用vs2022創(chuàng)建一個(gè)cmake項(xiàng)目 在項(xiàng)目路徑下執(zhí)行命令 生成如下 我們?cè)偃タ碿make的配置UI上看 就已經(jīng)有了我

    2024年02月12日
    瀏覽(28)
  • 在VS2019中CMake生成出現(xiàn)報(bào)錯(cuò)

    在VS2019中CMake生成出現(xiàn)報(bào)錯(cuò)

    在vs中,項(xiàng)目-CMake設(shè)置 最下面有個(gè)顯示高級(jí) 將Ninja改成Unix Makefiles就可以避開這個(gè)問(wèn)題了。 一般改成unix Makefiles就能直接用了。 如果執(zhí)意要選用Ninja編譯,那么可能會(huì)比較麻煩,下面是一個(gè)比較詳細(xì)的鏈接。 另外一種處理方式

    2024年02月12日
    瀏覽(15)
  • CMake引用QT、CMake構(gòu)建一個(gè)轉(zhuǎn)換為3d tile的開源代碼

    CMake引用QT、CMake構(gòu)建一個(gè)轉(zhuǎn)換為3d tile的開源代碼

    在CMake里單獨(dú)運(yùn)行一下? find_package(Qt5?? ? REQUIRED? ? COMPONENTS Core Xml Test) ,Core Xml Test 這三個(gè)是需要的qt組件; 情況如下;提示找不到QT; 根據(jù)資料,cmake引用qt需要3-4個(gè)方面, ? ? 首先Qt包含三個(gè)編譯工具:moc、uic、rcc, moc:元對(duì)象編譯器(Meta Object Compiler),用來(lái)處理帶有

    2024年02月05日
    瀏覽(21)
  • cmake擴(kuò)展(2)——windows下動(dòng)態(tài)設(shè)置輸出文件(dll/exe)版本

    windows下設(shè)置文件的版本需要通過(guò)VERSIONINFO接口,詳情參考VERSIONINFO resource。這里我們根據(jù)模板做了一定的修改。 FILEVERSION和PRODUCTVERSION為必填項(xiàng)。內(nèi)容以\\\',\\\'分隔,輸出以\\\'.\\\'分隔(如設(shè)置為1,1,3,5,則實(shí)際輸出版本為1.1.3.5)??梢灾苯邮且徽麄€(gè)變量,也可以是多個(gè)變量以\\\',\\\'隔開。 而

    2024年02月13日
    瀏覽(16)
  • CMake+QT使用教程

    下面是使用 Qt 用 C++ 編寫的控制臺(tái)應(yīng)用程序的典型文件:CMakeLists.txt 項(xiàng)目目錄結(jié)構(gòu) 頂層CMakeLists.txt,包含整個(gè)項(xiàng)目的設(shè)置并調(diào)用add_subdirectory,頂層CMakeLists.txt設(shè)置的變量在子目錄項(xiàng)目中可見(jiàn) 子目錄項(xiàng)目CMakeLists.txt 項(xiàng)目目錄結(jié)構(gòu) 庫(kù)項(xiàng)目文件(src/businesslogic/CMakeLists.txt) 最后,

    2024年02月15日
    瀏覽(19)
  • VS2022遠(yuǎn)程Linux使用cmake開發(fā)c++工程配置方法

    VS2022遠(yuǎn)程Linux使用cmake開發(fā)c++工程配置方法

    最近使用別人在VS2015上使用visualgdb搭建的linux開發(fā)環(huán)境,各種不順手,一會(huì)代碼不能調(diào)轉(zhuǎn)了,一會(huì)行號(hào)沒(méi)了,調(diào)試的時(shí)候斷不到正確的位置,取消的斷點(diǎn)仍然會(huì)進(jìn)。因此重新摸索了一套使用vs的遠(yuǎn)程開發(fā)方法。 使用的相關(guān)工具及技術(shù)涉及: Vs2022 Ninja g++ gcc mobaxterm等。 采用ss

    2024年02月12日
    瀏覽(24)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包