早就听说qt可以集成到VS中,就是一直没尝试过。一直在使用qt creator,也没觉得它有什么不好。可最近VS用多了,我发现一个qt creator中很不好的毛病,就是代码自动完成时,creator要程序员敲enter;而VS只需按下空格键。可别小看这小小区别,对于习惯于五笔打字姿势的我而言,按空格可真是方便多了。于是这会儿才想把qt集成到VS中,当作练习练习。

查了网上很多教程,发现很多人选择用VS去编译qt源码,一个nmake下去就得要4,6个小时,最后还不一定成,中间还这么多问题,我实在不太想这么搞。于是去仔细查看官方下载软件包,发现在win32平台上有两种区分:mingw和msvc,且都是exe文件,名字差不多是:qt-windows-opensource-5.1.0-msvc2010-x86-offline.exe。这不就是与VS2010有关系的qt库嘛,何不先用用它再说呢?当然,还得下一个插件:qt-vs-addin-1.2.2-opensource.exe,安了它之后,VS才会多出一个Qt5菜单;另外,为了能让QT代码在VS中自动完成,还需安装VassistX,相信用过VS的应该都知道它吧。

下载地址:http://qt-project.org/downloads

下载安装qt-windows-opensource-5.1.0-msvc2010-x86-offline.exe后,你会发现它帮你把新版本的qt creator等软件都给安了;

下载安装qt-vs-addin-1.2.2-opensource.exe,VS中的qt菜单如下图:

在上图的Qt Options中加入Qt5的库路径,也就是msvc2010的安装路径,我的是:D:\Qt5.1.0\5.1.0\msvc2010;

安装VAssistX破解版后,在VAssistX菜单的option下添加qt5的头文件路径,以使能自动完成:

好。现在写一个经典的helloworld:(由于新建项目时,没有空项目模板,所以就选择”控制台“模板,其实与空模板没什么两样)

  1. #include <QtWidgets/QApplication>
  2. #include <QtWidgets/QLabel>
  3. int main(int argc, char *argv[])
  4. {
  5. QApplication app(argc,argv);
  6. QLabel *lbl = new QLabel("<h2><font color=red>Qt5</font></h2>");
  7. lbl->show();
  8. return app.exec();
  9. }

注意:我发现qt5与qt4的头文件路径有了不同,如果头文件路径写错,编译器就会报“not found"的错误

打开项目--属性对话框,要进行一些设置才能编译链接成功:

(我的附加依赖项中,缺少Qt5Guid.lib和Qt5Widgetsd.lib)

最后运行得:

很遗憾,我以为qt代码在VS中自动完成是按空格的,没想到还是按enter,有点无语。。

总之,算是基本成了。我发现环境变量QTDIR应该是要设置的,好像VS已经帮我设置了;如果你的没有,也许需要你自己设置了。

VS2010与Qt5.1.0集成(非源码方式)的更多相关文章

  1. VS2010与Qt5.1.0的集成

    早就听说qt可以集成到VS中,就是一直没尝试过.一直在使用qt creator,也没觉得它有什么不好.可最近VS用多了,我发现一个qt creator中很不好的毛病,就是代码自动完成时,creator ...

  2. VS2010编译Qt5.4.0静态库

    http://www.kavenblog.com/?p=375 1.Qt的跨平台十分优秀,但是在Windows上是还是会有许多问题,其中之一就是动态链接库的问题,Qt程序的发布必须带一个体积不小的DL ...

  3. VS2010配置QT5.5.0开发环境

    一.官网下载QT和qtvsaddin插件 网址:http://www.qt.io/download-open-source/ 1. 2. 3. 得到下载的安装包,点击安装就能够了 watermark/ ...

  4. openssh/openssl升级到7.4和1.0.2j 源码方式

    #!/bin/bashtar -xvf openssh-7.4p1.tar.gztar -xvf openssl-1.0.2j.tar.gz 升级 openssl 到1.0.2jcd openssl- ...

  5. Nodejs.安装.非源码方式安装Node.js (Centos)

    已验证的适用环境: Centos6.x 树莓派官方ROM(Raspbian) 先去官网下载已编译好的安装包 https://nodejs.org/en/download/current/​ 以Cent ...

  6. VS2013编译Qt5.6.0静态库

    获取qt5.6.0源码包 直接去www.qt.io下载就好了,这里就不详细说了. 这里是我已经编译好的** 链接:http://pan.baidu.com/s/1pLb6wVT 密码: ak7y ** ...

  7. qt-5.6.0 移植之qt文件系统的建立

    经过差不多两个星期的奋斗,终于在板子里面跑起来了qt 程序,虽然现在还没有把触摸屏驱动加上去,但是我相信已经不远了!!!!! 在前两篇的随笔里面 , 已经编译好了最纯净的文件系统以及交叉编译完成了qt ...

  8. VS2013编译Qt5.6.0静态库(乌合之众)

    获取qt5.6.0源码包 直接去www.qt.io下载就好了,这里就不详细说了. 这里是我已经编译好的** 链接:http://pan.baidu.com/s/1pLb6wVT 密码: ak7y ** ...

  9. Qt5.5.0在Windows下静态编译(修改参数以后才能支持XP)good

    测试系统环境: windows 7 编译软件环境: vs2013 + QT5.5.0 [源码地址:http://download.qt.io/official_releases/qt/5.5/5.5. ...

随机推荐

  1. 【转载】 opencv, PIL.Image的彩色图片维度 && caffe和pytorch的矩阵维度

    原文地址: https://blog.csdn.net/u011668104/article/details/82718375 ------------------------------------ ...

  2. 【linux基础】vim快速移动光标至行首行尾、第一行和最后一行

    前言 使用vim的过程中想要快速移动光标至行首.行尾.第一行.最后一行或者某一行,本文对此简单介绍. 具体操作 1.快速至当前行的行首: 1) Home键:  2) 数字0:  3) 符号^; 2.快 ...

  3. Python之路,第十七篇:Python入门与基础17

    python3  面向对象编程 面向对象编程 什么是对象? 一切皆对象: 面向对象是思想: 描述思想的语言有:C++/Java/Python/Swift/C# 两个概念: 类  class 对象 ob ...

  4. this和super用法详解

    这几天看到类在继承时会用到this和super,这里就做了一点总结,与各位共同交流,有错误请各位指正~ this this是自身的一个对象,代表对象本身,可以理解为:指向对象本身的一个指针. this ...

  5. ZOJ4060 Flippy Sequence(思维题)

    题目链接:传送门 题目大意: 两个长度为n的二进制串s,t,每次操作可以将s串的一段区间取反.求操作exactly twice后使得s=t的方法数. 思路: 连续的尽可能长的 si ≠ ti 的区间简 ...

  6. set_union和set_intersection

    set_union使用方法: set_union(集合A起始地址,集合A终止地址,集合B起始地址,集合B终止地址,插入C集合中(操作:inserter(C.C.begin()))); set_inte ...

  7. MergeKLists

    public ListNode mergeKLists(ListNode[] lists) { if(lists==null||lists.length==0) return null; Priori ...

  8. C++学习(七)(C语言部分)之 输入

    输入学习时的笔记(其实也没什么用,留着给自己看的) 输出是指 把内容打印到控制台窗口 输入是指 把内容输入到程序里 scanfscanf 从键盘获取内容到程序里格式占位符+变量要加取地址符 1.格式占 ...

  9. Python语言规范

    Lint 对你的代码运行pylint 定义: pylint是一个在Python源代码中查找bug的工具. 对于C和C++这样的不那么动态的(译者注: 原文是less dynamic)语言, 这些bug ...

  10. MySQL--查看内存信息

    常见查看内存信息命令 ## 使用free -m命令查看 free -m ## 使用cat /proc/meminfo 查看 cat /proc/meminfo ## 使用dmidecode命令查看 d ...