早就听说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:(由于新建项目时,没有空项目模板,所以就选择”控制台“模板,其实与空模板没什么两样)

[cpp] view plaincopyprint?

  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. VS2010+Qt5.4.0 环境搭建(离线安装)

    原创作者:http://blog.csdn.net/solomon1558/article/details/44084969 前言 因项目需要Qt开发GUI,我根据网上资料及自己的经验整理了搭建vs2 ...

  5. QT5.4.0安装以及与VS2010整合安装---64bit操作系统解决方案

    QT5.4.0安装以及与VS2010整合安装---64bit操作系统解决方案 注意,目前QT官网不能下载,必须提供注册,然后才可以下载. 网上不同版本安装的细节有差异,特将我的安装相关操作贴出来,希望 ...

  6. 使用Qt5.7.0 VS2015版本生成兼容XP的可执行程序 good(从VS2012 update1开始支持xp和c++11)

    一.直接使用VS2012/VS2013/VS2015生成XP兼容的可执行程序 Visual Studio刚发布时没打补丁,称为RTM版,之后会陆续发布补丁,进行bug修复和功能增强.VS2010及之前 ...

  7. Win7(32bit)下Qt5.5.0和OpenCV2.4.9环境的搭建

    之前一直基于Windows平台(Win 7 32bit)使用VS2010做OpenCV的开发,现在开始学习在Windows 下使用Qt做OpenCV的开发.本文主要讲述Windows平台下(Win 7 ...

  8. 【Qt】VS2010编译Qt5.3.2 64bit

    1. 为什么要这么做 在Windows下,Qt官网默认提供的二进制版本大多是32位,目前(2015.01.24)只对VS2013提供了64位版本,如下图所示: 为了适应我目前安装的VS2010 IDE ...

  9. 使用Qt5.7.0 VS2015版本生成兼容XP的可执行程序

    版权声明:本文为灿哥哥http://blog.csdn.net/caoshangpa原创文章,转载请标明出处. 一.直接使用VS2012/VS2013/VS2015生成XP兼容的可执行程序 Visua ...

随机推荐

  1. python中使用Opencv进行人脸检测

    这两天学习了人脸识别,看了学长写的代码,边看边码边理解搞完了一边,再又是自己靠着理解和记忆硬码了一边,感觉还是很生疏,就只能来写个随笔加深一下印象了. 关于人脸识别,首先需要了解的是级联分类器Casc ...

  2. C#aspx页面前台使用<%=%>无法取到后台的值

    检查是不是有拼接问题,正常public和protected修饰的字段或属性均可使用<%=%>.另外,加载(Page_Load)时有没有给它们赋初始值? 答 1)前台页面只能调用本后置代码的 ...

  3. hdoj1074--Doing Homework (DP 状态压缩)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1074 思路: 看着数据很小,15,但是完成的顺序有15!情况,这么大的数据是无法实现的.上网查才知道要 ...

  4. C++ 模板的全特化与偏特化

    模板为什么要特化,因为编译器认为,对于特定的类型,如果你能对某一功能更好的实现,那么就该听你的. 模板分为类模板与函数模板,特化分为全特化与偏特化.全特化就是限定死模板实现的具体类型,偏特化就是如果这 ...

  5. 2-string相关函数

    string真的很好用,希望通过逐步的学习逐渐掌握的string的用法: 1. append() -- 在字符串的末尾添加字符 2. find() -- 在字符串中查找字符串 4. insert() ...

  6. html菜单和课程表

    菜单: <html> <head> <meta charset="utf-8"> <title>菜单练习</title> ...

  7. window.location.origin

    当前页面的域名+端口号 var HTTP_REMOTE = (function () { var origin = window.location.origin; if (origin.match(/ ...

  8. jquery获取radio单选框的值

    1.获取原有单选框的值 var value=$("input[name='is_setting']:checked").val(); 2.获取重选后的单选框的值 <tr> ...

  9. 11 Maven 灵活的构建

    Maven 灵活的构建 一个优秀的构建系统必须足够灵活,它应该能够让项目在不同的环境下都能成功地构建.例如,典型的项目都会有开发环境.测试环境和产品环境,这些环境的数据库配置不尽相同,那么项目构建的时 ...

  10. HTTP 500.21 处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”

    问题:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler” IIS7下部署网站出现错误,原因是先安装的II ...