VS2010與Qt5.1.0集成(非源碼方式)

早就聽說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:(由於新建項目時,沒有空項目模板,所以就選擇”控制檯“模板,其實與空模板沒什麼兩樣)

#include <QtWidgets/QApplication>
#include <QtWidgets/QLabel>

int main(int argc, char *argv[])
{
	QApplication app(argc,argv);	
	QLabel *lbl = new QLabel("<h2><font color=red>Qt5</font></h2>");

	lbl->show();
	return app.exec();
}

注意:我發現qt5與qt4的頭文件路徑有了不同,如果頭文件路徑寫錯,編譯器就會報“not found"的錯誤

打開項目--屬性對話框,要進行一些設置才能編譯鏈接成功:


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



最後運行得:


很遺憾,我以爲qt代碼在VS中自動完成是按空格的,沒想到還是按enter,有點無語。。

總之,算是基本成了。我發現環境變量QTDIR應該是要設置的,好像VS已經幫我設置了;如果你的沒有,也許需要你自己設置了。

發佈了33 篇原創文章 · 獲贊 17 · 訪問量 22萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章