使用VS2010將VC、MFC工程轉爲Qt-Addin工程

如果你有需求是這樣的:目前在做的項目是純VC項目或MFC項目,但是現在想在項目中使用Qt。

 

本例可能幫到你。

 

儘管我們可以自己將Qt的庫和頭文件包含進項目以便使用Qt相關的東西但是在涉及到生成moc文件或ui_xxx.h文件和其他qt相關的資源處理時就會很複雜(也可以通過手動去完成比如customer-build-tools等,但是效率實在是太慢了還容易出錯)。因爲不是Qt-addin的話我們的插件是不起作用的,就像這樣:

 

 

那麼爲什麼不考慮吧VC項目或者是MFC直接轉成Qt-addin項目呢?這樣之後項目就像一開始就是Qt項目一樣

那麼我們看看怎麼操作(先裝Qt-addin插件,我的示例中就不舉例這個步驟了各位都會)。

 

1.先創建一個MFC項目並卸載項目(也就是你需要轉爲Qt-addin的項目)

 

 

2.再起一個VS新建一個Qt項目並卸載項目

 

 

 

3.編輯MFC項目和QT項目

 

 

4.我們在兩個項目中都找到“<PropertyGroup Label="Globals">” 這個標籤並替換信息:

在MFC項目中:

<PropertyGroup Label="Globals">
    <ProjectGuid>{E4A4753C-00E2-46FF-A3AD-4F7D1B77B916}</ProjectGuid>
    <RootNamespace>MFC_PROJECT</RootNamespace>
    <Keyword>MFCProj</Keyword>
</PropertyGroup>

在Qt項目中:

<PropertyGroup Label="Globals">
    <ProjectGuid>{FBC06507-4C6E-4D7C-BE7B-EA2583CE6071}</ProjectGuid>
    <Keyword>Qt4VSv1.0</Keyword>
</PropertyGroup>

我們把MFC項目中的Keyword標籤全部刪除,然後把Qt項目中的Keyword標籤複製過去。

結果(MFC項目中):

<PropertyGroup Label="Globals">
    <ProjectGuid>{E4A4753C-00E2-46FF-A3AD-4F7D1B77B916}</ProjectGuid>
    <RootNamespace>MFC_PROJECT</RootNamespace>
    <Keyword>Qt4VSv1.0</Keyword>
</PropertyGroup>

保存。

 

 

5.重新加載MFC項目,並用Qt-Addin轉爲Qt-Addin項目

這個時候你的工程就是Qt項目了,和你一開始就創的那個Qt項目是一樣的,可以方便的生成moc、編譯Ui文件、qrc文件等,不用每次都手動去處理這些繁瑣的工作了!

 

讓我們看看Qt-addin可用了沒:

完全可以用,目前這個MFC項目就成爲Qt-Addin項目了,能方便的使用qt的內容。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章