Qt 转 Visual Studio 注意事项(自留记录)
本文运行环境: Win 10 Visual Studio 2017 Qt 5.14.2 + MSVC 2017 + MinGW 编码转换工具:EditPlus
Visual Studio载入Qt工程
Visual Studio不会自带Qt开发环境,需要先下载配置Qt环境,此处不多赘述。 安装好Qt后,在Visual Studio安装Qt的开发工具:
-
VS工具栏点击"工具"->“扩展和更新”->“联机”–>搜索"Qt Visual Studio Tools",安装这个工具包之后就可以在VS中打开Qt工程了。 -
此时还不可以进行编译,如果你的Qt版本没有下载MSVC kit,那么你还需要额外准备一下MSVC。 你需要在这类教程中学习如何配置 Qt+MSVC环境: https://blog.csdn.net/zyhse/article/details/105413984 -
完成上面的工作后,可以在VS中打开Qt工程了。不过大概率还是会编译不过;
编译问题
- Note: No relevant classes found. No output generated
https://www.cnblogs.com/zugle/p/12653152.html 如果遇到这个提示,请直接检查文件编码,这个地方会影响到moc文件的生成,间接影响后续的编译过程,所以先解决这个问题很重要。 - QT5+VS LNK2001: 无法解析的外部符号 “public: static struct QMetaObject
可以参考这篇:https://blog.csdn.net/u012308586/article/details/118727462 或者检查文件编码(这是我遇到的问题,其实也就是上一项Note问题导致的,解决 Note: No relevant classes found. No output generated这个就好了。)
文件编码
- Qt 文件默认是编码集Unicode的一种
Visual Studio 文件默认是编码集GB2312
因此,在使用Visual Studio打开Qt工程之前应该先使用notepad++等工具将文件编码转换为GB2312,需要转换的文件有 : 除UI文件外的编译会用到的所有.cpp / .h 文件。然后在Vs打开.pro文件加载Qt工程,点击"生成"->"生成 projectName(U)"等待编译结果。如果生成成功,则可以按Ctral+F5直接执行生成的可执行程序。如果生成失败,请根据编译结果的警告另外排查可能原因。
UI 文件的修改
不允许直接修改文件内容,需要通过Qt Designer来设计UI文件。 如果打开ui文件后会闪退,是因为默认的QtDesigner版本不同,要重新添加相应版本的Qtdesigner。 打开工程后,右键点击.ui文件选择打开方式,在弹出窗口点击“添加”–>“程序栏”点击 […]找到对应Qt的designer.exex,然后确认,并将新添加的Qtdesigner设置为默认值即可。
- designer.exe参考路径:“C:\Qt\Qt5.14.2\5.14.2\msvc2017\bin\designer.exe”
qrc文件的更改
如果开发过程中需要更改qrc资源文件,需要添加QrcEditor。添加过程与Qtdesigner类似。
- qrceditor.exe参考路径:“C:\Users\raysees\AppData\Local\Microsoft\VisualStudio\15.0_9f14d018\Extensions\caapeoz3.xza\qrceditor.exe”
|