本篇内容主要讲解“Qt5代码怎么移植到Qt6”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Qt5代码怎么移植到Qt6”吧!
尝试下Qt5的代码是否可以正常在Qt6上编译通过,使用的我网易云代码,这里测试的时候我先添加了5.12的版本进行测试没有问题,下面将切换到6.0的环境试一下。
切换到6.0后,没有得到我要的结构,没有编译过,第一个就是“QFontMetrics”报错error: 'class QFontMetrics' has no member named 'width',那么目前最要紧的是想在6.0上让我的代码先跑起来,所以这里暂时先把这个功能注释掉。
QFontMetrics fontWidth(font);
int width = fontWidth.width(str); //计算字符串宽度
if(width>=MaxWidth) //当字符串宽度大于最大宽度时进行转换
{
str = fontWidth.elidedText(str,Qt::ElideRight,MaxWidth); //右部显示省略号
}
return str; //返回处理后的字符串
注释掉了“QFontMetrics”还是没有解决问题,这里有了新的东西出线“QTableWidgetItem”错误显示error: 'class QTableWidgetItem' has no member named 'setTextColor'; did you mean 'setText'?,注释掉,再试。
界面出来了。看来Qt5的程序在Qt6基本上还是没有问题的,除了个别模块的某些方法被修改了。