Qt6 for Windows 环境搭建(Visual Studio)

news2024/11/26 10:35:16

作者: 一去、二三里
个人微信号: iwaleon
微信公众号: 高效程序员

在 Windows 中,如果想要开发 Qt 应用程序,可以选择多种方式:

  • Qt Creator + MinGW 编译器
  • Qt Creator + MSVC 编译器
  • Visual Studio(自带 MSVC 编译器)

前两种方式之前我们已经介绍过了,主要利用 Qt Creator 作为 IDE,并配合不同的编译器来开发 Qt。现在该介绍第三种方式了,使用 Visual Studio 作为 IDE 来开发 Qt。

Qt Creator 还是 Visual Studio

经常有人会问:在编写 Qt 程序时,应该使用哪个 IDE - Qt Creator 还是 Visual Studio?

  • Qt Creator
    专为 Qt 开发设计的 IDE,跨平台、轻量级、直观易用,在功能和工作流程上与 Qt 框架紧密集成。它提供了很多有用的功能,如代码编辑器、Designer 设计师、示例教程等;此外,它还具有非常好用的自动完成和代码导航功能,使我们能够更加高效地编写 Qt 代码。

  • Visual Studio
    是一个强大且被广泛使用的 IDE,支持多种编程语言。它提供了丰富的功能和工具,包括代码编辑器、调试器、性能分析器等;同时它还支持很多第三方插件和扩展,比如分布式编译工具 IncrediBuild、静态代码检查工具,以及 Qt Visual Studio Tools 插件等。

总之,这两个 IDE 都可用于 Qt 开发。如果想要进行跨平台,并且要深入利用 Qt 框架的特性,建议选择 Qt Creator;如果习惯于使用 Visual Studio,并且项目需要与其他非 Qt 相关代码进行集成,则建议选择 Visual Studio。

下载 Visual Studio

有关 Visual Studio 的下载,可以参考以下地址:

  • 最新版下载(VS2022):https://visualstudio.microsoft.com/zh-hans/downloads/
  • 旧版本(VS2019 及之前的版本):https://visualstudio.microsoft.com/zh-hans/vs/older-downloads/
  • VS2019 下载:https://learn.microsoft.com/zh-cn/visualstudio/releases/2019/release-notes

Visual Studio 一共有三个版本,Community 社区版(免费)、Professional 专业版(收费)、Enterprise 企业版(价格更贵)。由于我们是个人使用,选择 Community 社区版就足够了(Because it’s free)。

在下载 Qt6.5 时,由于我们选择了“MSVC 2019 64-bit”,因此这里建议下载对应的 Visual Studio 版本(即:2019),以防后面出现兼容问题。

在这里插入图片描述

安装 Visual Studio

在 Visual Studio 下载完成之后,双击准备安装。

这时会检查是否有可用的更新或者组件需要下载和安装,包括:特定的工作负载、组件、模块、或者其它相关内容。

在这里插入图片描述

稍等片刻,就会进入组件选择界面。

在“工作负荷”界面选择“使用 C++ 的桌面开发”,随后再选择一下语言、安装位置,就可以正常安装了:

在这里插入图片描述

安装过程较长,耐心等待吧!

在这里插入图片描述

安装插件

在 Visual Studio 安装完成之后,我们并不能立即使用 Qt,还需要安装两个额外的插件:

  • Qt Visual Studio Tools
    提供了与 Qt 框架集成的功能(例如:项目模板、Designer 设计师等),以辅助我们创建、构建和调试 Qt 项目,让 Qt 在 Visual Studio 中变得更加易用。

  • Qt VS CMake Tools
    专注于与 CMake 构建系统的集成,使我们能够在 Visual Studio 中使用 CMake 构建和管理 Qt 项目。

打开 Visual Studio,在最上方的菜单栏中选择【扩展】 ->【管理扩展】,然后在打开的“管理扩展”窗口中搜索“Qt”,这时搜索结果中就会出现这两个插件,分别进行下载安装:

在这里插入图片描述

在安装完这两个插件之后,需要重启 Visual Studio 以让插件生效。

配置 Qt

打开 Visual Studio 后,先不要着急创建项目或者打开项目,因为这时 Qt 的环境尚未准备就绪,需要配置一下。

点击“继续但无需代码”,进入主界面进行配置。

在这里插入图片描述

可以看到,Visual Studio 中出现了一条警告,提醒我们要配置 Qt 的版本。

选择【扩展】 ->【Qt VS Tools】 ->【Qt Versions】:

在这里插入图片描述

这时会弹出一个对话框,在右侧表格的“Path”所在列中,添加 Qt MSVC 安装目录下的 qmake.exe 路径:

在这里插入图片描述

到这里,配置就基本完成了。

环境测试

现在来创建一个测试程序,点击左上角菜单栏中的【文件】->【新建】->【项目】:

在这里插入图片描述

将模版列表拖动到最底下,这时会看到所有的 Qt 模版,选择 “Qt Quick Application”进行创建:

在这里插入图片描述

填写项目名称,并选择项目保存的位置,然后点击“创建”:

在这里插入图片描述

在弹出的向导界面中,会列出要包含在项目中的配置,使用默认推荐的配置即可:

在这里插入图片描述

接下来,就会自动生成相应的工程代码了。

选择菜单栏上的【调试】->【开始执行】(或者快捷键 Ctrl + F5)来运行代码,效果如下:

在这里插入图片描述

这就说明环境配置 OK 了,接下来就可以愉快的用 Visual Studio 写代码啦!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/949092.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

线上祭奠软件:虚拟纪念与情感表达的新方式

线上祭奠软件作为一种新兴的技术应用,正在改变传统祭奠方式,为人们提供了跨越时空的虚拟纪念和情感表达方式。本文将深入探讨线上祭奠软件的意义、功能与挑战,并思考其对社会和个人的影响。 一、线上祭奠软件的意义: 1.跨…

MyBatis —— 初窥门径

前言 MyBatis作为一款优秀的持久层框架,在Java后端开发中无疑是比较重要一环,在常见的spring整合的SSM框架以及之后的SpringBoot中都可以看到MyBatis大显神威的模样。在这篇文章中,荔枝将会从Maven开启创建一个MyBatis项目并整理MyBatis相应的…

服务器放在香港好用吗?

​  相较于国内服务器,将网站托管在香港服务器上最直观的好处是备案层面上的。香港服务器上的网站无需备案,因此更无备案时限,购买之后即可使用。 带宽优势 香港服务器的带宽一般分为香港本地带宽和国际带宽、直连中国骨干网 CN2三种。香港…

函数注解学习

def hanshuzhujie(a:str,b: str m)->str:print(hanshuzhujie.__annotations__)return ab hanshuzhujie(qqq)运营结果 E:\Python\Python38\python.exe D:/pythonprojects/python-auto-test/test/hanshuzhujie.py {a: <class str>, b: <class str>, return: <…

生态项目|Typus如何用Sui特性制作动态NFT为DeFi赋能

对于许多人来说&#xff0c;可能因其涉及的期权、认购和价差在内的DeFi而显得晦涩难懂&#xff0c;但Typus Finance找到了一种通过动态NFT使体验更加丰富的方式。Typus NFT系列的Tails为用户带来一个外观逐渐演变并在平台上提升活动水平时获得新特权的角色。 Typus表示&#x…

AI时代,GPGPU和NPU哪个才是王者?

AI飞速发展&#xff0c;全球算力井喷&#xff0c;我国进入AI计算高速发展阶段&#xff0c;GPU的自主化已经摆上案头。近日&#xff0c;华夏银行首席信息官吴永飞发表研究&#xff0c;指出GPGPU是比NPU更合适的路线&#xff0c;并以海光DCU为基础进行了GPU算力池化的研究。 GPG…

无涯教程-Android - List View函数

Android ListView 是垂直滚动列表中显示的视图&#xff0c;使用 Adapter 从列表(如数组或数据库)中获取内容的列表项会自动插入列表中。 适配器(Adapter)实际上是UI组件和将数据填充到UI组件中的数据源之间的桥梁&#xff0c;适配器保存数据并将数据发送到适配器视图&#xff0…

说说我最近筛简历和面试的感受。。

大家好&#xff0c;我是鱼皮。 都说现在行情不好、找工作难&#xff0c;但招人又谈何容易&#xff1f;&#xff01; 最近我们公司在招开发&#xff0c;实习社招都有。我收到的简历很多&#xff0c;但认真投递的、符合要求的却寥寥无几&#xff0c;而且都是我自己看简历、选人…

【ES6】Proxy的高级用法,实现一个生成各种 DOM 节点的通用函数dom

下面的例子则是利用get拦截&#xff0c;实现一个生成各种 DOM 节点的通用函数dom。 <body> </body><script>const dom new Proxy({}, {get(target, property) {return function(attrs {}, ...children) {const el document.createElement(property);for …

路由转发(详细理解+实例精讲)

系列文章目录 华为数通学习&#xff08;5&#xff09; 目录 华为数通学习&#xff08;5&#xff09; 前言 一&#xff0c;最长匹配原则 实例1&#xff1a; 实例2&#xff1a; 二&#xff0c;路由转发流程&#xff1a; 三&#xff0c;IP路由表小结&#xff1a; 总结 前…

公司新招了一个拿14K的测试员,而我工作3年才8K,凭什么?

最近我的好朋友给我分享了一个他公司发生的事&#xff0c;大概的内容呢就是&#xff1a;公司一位工作3年的测试员的工资还没有一个刚来的新人高&#xff0c;对此怨气不小&#xff0c;她来公司辛辛苦苦三年&#xff0c;三年内迟到次数都不超过5次&#xff0c;每天都是按时上下班…

WebGPT VS WebGPU

推荐&#xff1a;使用 NSDT编辑器 快速搭建3D应用场景 随着WebGPU的引入&#xff0c;Web开发发生了有趣的转变&#xff0c;WebGPU是一种新的API&#xff0c;允许Web应用程序直接访问设备的图形处理单元&#xff08;GPU&#xff09;。这种发展意义重大&#xff0c;因为 GPU 擅长…

如何买期权看多:期权交易技巧指南,一定要看!

首先我们要清楚在50ETF期权中有两个角色&#xff0c;分别是买方和卖方&#xff0c;两者互为对手方&#xff0c;买方也就是散户&#xff0c;卖方可以理解为机构&#xff0c;认购是看多&#xff0c;认沽是做空。下文介绍如何买期权看多&#xff1a;期权交易技巧指南&#xff0c;一…

理解 Databend Cluster key 原理及使用

Databend Cluster Key 是指 Databend 可以按声明的 key 排序存储&#xff0c;主要用于用户对时间响应比较高&#xff0c;同时愿意为这个 cluster key 进行额排序操作的用户。 Databend 只支持一个 Cluster key&#xff0c;Cluster key中可以包含多列及表达式。 基本语法 -- 语…

恒运资本:股票有认购和申购区别?

股票是一个非常复杂的金融概念&#xff0c;涉及到许多术语和概念&#xff0c;其间包含股票认购和股票申购。这两个概念是股票出资中非常重要的一部分&#xff0c;出资者需求了解它们的差异和使用方法&#xff0c;才干更好地进行股票出资。 认购和申购的界说 首要&#xff0c;咱…

嬴图Ultipa | 一文了解关于图数据库的一点儿干货

本篇包括以下内容点&#xff1a; 数据库主要技术分类 图是什么&#xff1f; 图的模式 图数据库 VS.关系型数据库 图数据库VS.其他NOSQL的对比 并非所有的图数据库都一样&#xff01; 根据Gartner预测&#xff0c;“到2025年&#xff0c;使用图技术进行数据和分析创新…

多个开源姿态检测模型项目,上手即用,实测可行!

编辑&#xff1a;OAK中国 项目来源&#xff1a;oakchina.cn 喜欢的话&#xff0c;请多多&#x1f44d;⭐️✍ ▌前言 Hello&#xff0c;大家好&#xff0c;这里是OAK中国&#xff0c;我是助手君。 我发现今年有不少朋友都想做姿态检测&#xff0c;正好我们也有不少客户做过这…

概念解析 | 认知媒介战:重塑信息战争的新纪元

注1:本文系“概念解析”系列之一,致力于简洁清晰地解释、辨析复杂而专业的概念。本次辨析的概念是:认知媒介战。 认知媒介战:重塑信息战争的新纪元 俄乌网络战争观察与思考:混合战争及其背后的信息战- 安全内参| 决策者的网络安全知识库 一、背景介绍 认知媒介战是一个新…

tsmc12nm innovus加endcap失败的原因分析

我正在「拾陆楼」和朋友们讨论有趣的话题&#xff0c;你⼀起来吧&#xff1f; 拾陆楼知识星球入口 重新create floorplan时加了flip first row就加上了endcap&#xff0c;所以一些情况下设置core2die也可以解决这个问题。 physical only的cell&#xff0c;endcap是要先加的&a…

零知识证明(zk-SNARK)(一)

全称为 Zero-Knowledge Succinct Non-Interactive Argument of Knowledge&#xff0c;简洁非交互式零知识证明&#xff0c;简洁性使得运行该协议时&#xff0c;即便statement非常大&#xff0c;它的proof大小也仅有几百个bytes&#xff0c;并且验证一个proof的时间可以达到毫秒…