相信大家都知道在 Qt Creator 中可以使用 MSVC 编译工具对 Qt 项目进行编译。若有人比较习惯于使用 Visual Studio,或某些项目必须使用 Visual Studio,也可以在 Visual Studio 里创建和管理 Qt 程序项目。

要在 Visual Studio 中使用 Qt,需要安装一个 Visual Studio 的 Qt 插件,这个插件程序由 Qt 公司提供。目前最新的 Visual Studio Qt 插件是Visual Studio Add-in 2.0.0 for Qt5 MSVC 2015,可以从 Qt 官网下载并安装。

安装此插件之前,需已经安装好 Visual Studio 2015。这里省略 Visual Studio Add-in 2.0.0 for Qt5 的安装过程。在vs2019里面好像有2017插件可以安装,但是似乎不太友好。

安装完成后,在 Visual Studio 的主菜单栏上增加了一个菜单组“Qt VS Tools”,在新建项目向导里增加了可创建 Qt 项目的项目模板。

在 Visual Studio 2015 里创建一个 Qt GUI 应用程序项目。创建项目时选择项目模板的对话框如图 1 所示,选择创建 Qt GUI Application 项目,根据向导提示完成项目 Demo 的创建。

            图1 在 Visual Studio 2015里创建Qt项目Demo

按照向导缺省设置创建完项目后,Visual Studio 管理项目的全部文件,有一个 Demo.ui 的 窗体文件,双击此文件,会自动使用 Qt Designer 打开窗体文件进行界面设计,如同在 Qt Creator 里设计窗体一样。

在首次使用 Visual Studio 编译 Qt 项目之前,必须先进行一些设置,否则会提示没有设置 Qt 版本,无法编译项目。

            图 2 Qt Option设置对话框

首先要设置 Qt 版本。单击 Visual Studio 菜单项Qt VS Tools→Qt Options,出现如图 2 所示的对话框。Qt Versions 页面显示了可以使用的 Qt 版本(这是已经设置好的界面),在未设置 之前,框里是空白的。单击“Add”按钮出现如图 3 所示的添加 Qt 版本对话框。

          图 3 添加 Qt 版本对话框

单击“Path”文本框后面的按钮,在出现的目录选择对话框里选择 Qt 5.9.1 安装目录下的 MSVC 编译器目录,如D:\Qt\Qt5.9.1\5.9.1\msvc2015_64。选择目录后,Version name 编辑框里会自动出现版本名称,可以修改此名称为意义更明显的名字,如“msvc2015-64bit”。 然后,再单击 Visual Studio 菜单项Qt VS Tools→Qt Project Settings,为项目设置 Qt 版本,出现如图 4 所示的对话框。在此对话框的 Properties 分页下的列表框里,在 Version 下拉列表框中选择某个 Qt 版本。

                     图 4 Qt 项目设置对话框

完成这两项设置后,再进行编译就没有问题了。项目的运行、调试等就都是 Visual Studio 的操作了,这里不再赘述。

提示,在 Qt Creator 里就可以使用 MSVC 编译器对项目进行编译,并不是只有在 Visual Studio 里才可以使用 MSVC 编译器编译 Qt 的项目。根据个人开发习惯,可使用不同的编译工具。

VS中使用Qt方法详解的更多相关文章

  1. Java中的main()方法详解

    在Java中,main()方法是Java应用程序的入口方法,也就是说,程序在运行的时候,第一个执行的方法就是main()方法,这个方法和其他的方法有很大的不同,比如方法的名字必须是main,方法必须是 ...

  2. Python 在子类中调用父类方法详解(单继承、多层继承、多重继承)

    Python 在子类中调用父类方法详解(单继承.多层继承.多重继承)   by:授客 QQ:1033553122   测试环境: win7 64位 Python版本:Python 3.3.5 代码实践 ...

  3. Python中格式化format()方法详解

    Python中格式化format()方法详解 Python中格式化输出字符串使用format()函数, 字符串即类, 可以使用方法; Python是完全面向对象的语言, 任何东西都是对象; 字符串的参 ...

  4. (转)shell中test命令方法详解

    test命令用法.功能:检查文件和比较值 shell中test命令方法详解 原文:https://www.cnblogs.com/guanyf/p/7553940.html 1)判断表达式 if te ...

  5. 关于 redux-saga 中 take 使用方法详解

    本文介绍了关于redux-saga中take使用方法详解,分享给大家,具体如下: 带来一个自己研究好久的API使用方法. redux-saga中effect中take这个API使用方式,用的多的是ca ...

  6. JavaScript中数组Array方法详解

    ECMAScript 3在Array.prototype中定义了一些很有用的操作数组的函数,这意味着这些函数作为任何数组的方法都是可用的. 1.Array.join()方法 Array.join()方 ...

  7. jquery中的ajax方法详解

    定义和用法ajax() 方法通过 HTTP 请求加载远程数据.该方法是 jQuery 底层 AJAX 实现.简单易用的高层实现见 $.get, $.post 等.$.ajax() 返回其创建的 XML ...

  8. Laravel框架中的make方法详解

    为什么网上已经有这么多的介绍Laravel的执行流程了,Laravel的容器详解了,Laravel的特性了,Laravel的启动过程了之类的文章,我还要来再分享呢? 因为,每个人的思维方式和方向是不一 ...

  9. js中Array对象方法详解

    操作方法:concat() slice() splice() concat()方法可以基于当前数组中的所有项创建一个新数组.具体来说,这个方法会创建当前数组一个副本,将接收到参数添加到副本的末尾,最后 ...

  10. iOS中--NSArray调用方法详解 (李洪强)

    下面的例子以     NSArray *array = [NSArray arrayWithObjects:@"wendy",@"andy",@"to ...

随机推荐

  1. Oracle数据库自动备份

    1.bat脚本 格式为ANSI格式 set CURDATE=%date:~0,4%%date:~5,2%%date:~8,2% set CURMON=%date:~0,4%%date:~5,2% se ...

  2. 记 某List.sort()后排序结果异常

    背景:某次查看日志,发现数据不符合预期,希望获取的是降序排序,但是部分数据是乱序的 已知List.sort()方法应该不会出异常,所以应该是判断先后方法出问题了 果然,因为一开始写代码时,没有考虑到差 ...

  3. 推荐一款流量录制回放工具:jvm-sandbox-repeater

    在软件开发和测试过程中,我们经常会遇到需要对网络请求进行录制和回放的需求,以便进行调试.测试和分析.为了模拟真实的用户请求,我们通常会使用各种流量录制回放工具来记录并重放网络请求. 其中,jvm-sa ...

  4. sicp每日一题[2.3]

    Exercise 2.3 Implement a representation for rectangles in a plane. (Hint: You may want to make use o ...

  5. webpack笔记-loader的详细使用介绍(四)

    loader 基本上都是第三方类库,使用时需要安装,有一些 loader 还需要安装额外的类库,例如 less-loader 需要 less,babel-loader 需要 babel 等. load ...

  6. ASP.NET Core Library – CsvHelper

    前言 平常都是用 Excel 的多, 但这一次遇到 Google Ads. 谷歌嘛, 当然不喜欢微软的 Excel. 硬是要求 CSV. 没办法, 只能找 Library 搞一搞了. 参考 Docs ...

  7. ASP.NET Core – Logging & Serilog

    前言 以前就写过了 Asp.net core 学习笔记 (Logging 日志), 只是有点乱, 这篇作为整理版. 参考: docs – Logging in .NET Core and ASP.NE ...

  8. 痞子衡嵌入式:为下一代AI边缘处理设备而生 - i.MXRT700

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是恩智浦i.MX RTxxx系列MCU的新品i.MXRT700. 四年前恩智浦官宣了面向下一代智能穿戴设备的 i.MXRT500 系列,这 ...

  9. 《赵渝强》《Docker+Kubernetes容器实战派》新书上市!!!

    用一本书掌握Docker与Kubernetes核心内容!!! 本书基于作者多年的教学与实践经验编写,分为上下两篇,共20章. 上篇(第1-11章)介绍Docoker,包含:Docker入门.Docke ...

  10. pcss 软阴影

    PCF Percentage Closer Filtering:PCF是一种用于阴影反锯齿的方法,本身不是软阴影方法. 算法流程说明: Perform multiple (e.g. 7x7) dept ...