QT4.8.6工程到QT5.12.1的迁移

2016年的一份代码是用VS QT4.8.6编写的,最近需要借鉴下,电脑上当前版本是QT 5.12.1,花了点时间做了下两者的转换,过程记录如下:

vs2017上已经拓展了QT VS Tools工具,当时的代码由vs2008编辑,打开项目出现

选中Qt VS Tools上的Convert custom build steps to Qt/MSBuild选项

直接编译会报一系列错误,需要配置下

当时的QT是win32版本,转换完毕后做如下修改:

项目配置属性中的windows SDK版本设置下,选择第2个10.0.18362.0

Qt Installation配置下

 

附加目录库添加如下:

附加依赖项添加如下:

代码部分的改动如下:

1. 需要把

#include <QtGui/QWidget>

替换为

#include <QWidget>

诸如类似的包含文件都需要做相应改动

2. 报错误    C2039    “WFlags”: 不是“Qt”的成员 (编译源文件 myui.cpp)   时,需要把WFlages替换为WindowFlags

3. 之前代码里有 QTextCodec::setCodecForTr(QTextCodec::codecForLocale());语句可以注释掉, QT5不再支持了

4. 报错误C2039    “setResizeMode”: 不是“QHeaderView”的成员  ,需要把setResizeMode换为setSectionResizeMode

5.报错误    C2678    二进制“==”: 没有找到接受“std::_Binder<std::_Unforced,SOCKET &,sockaddr *,unsigned int>”类型的左操作数的运算符(或没有可接受的转换)   ,需要在bind前面加上双引号,改为如下:

做完如下修改后,编译成功。

见到了16年自己的写的GUI,好熟悉的感觉。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

竹叶青lvye

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值