您的位置:首页 > 编程语言 > Qt开发

从Qt 4到Qt 5需要修改的地方

2016-09-02 08:49 176 查看
1、

一般的 Qt 4 程序要在 Qt 5 上编译,需要注意:

A.将 main.cpp 文件中的 #include <QtGui/QApplication> 修改为 #include <QApplication> 

B.在 .pro 项目文件中添加:greaterThan(QT_MAJOR_VERSION,
4): QT += widgets

原因是:Qt5里不再用QtGui模块,而是使用QtWidgets模块。

2、

在 Qt 5 中设置应用程序图标,需要注意:

A.将 .ico 图标文件放到项目源码目录

B.在 .pro 文件中添加:RC_ICONS
= myico.ico(myico.ico就是自己图标文件的名字)

3、

发布Qt
5程序时,除了必要的dll文件以外,还需要将plugins中的platforms目录复制过来,而里面只要保留qminimal.dll和qwindows.dll两个文件即可。

4、

Qt5 取消了 QTextCodec::setCodecForTr() 和 QTextCodec::setCodecForCString() 这两个函数。

直接将  QTextCodec::setCodecForLocale(QTextCodec::codecForName(“UTF8”))  至于QApplication实例之前即可解决;

5、

程序中使用了OWC10,用到了ActiveQt,原来的做法是在.pro中加CONFIG += qaxcontainer,现在需要改成

QT += axcontainer

当然了,原来的 CONFIG += qaxcontainer 也将去除

6、

在源文件中,凡是涉及到原QtGui中可视部件的,全要修改头文件引用,或者增加QtWidgets头文件,比如:

#include <QtGui/QPushButton>  要改成  #include <QPushButton>  或者  #include <QtWidgets/QPushButton>

在以前使用#include <QtGui>的地方,要加上 #include <QtWidgets>

7、

以前使用 QDesktopServices::storageLocation(QDesktopServices::xxxx) 来获取一些系统目录,现在则要改成

 QStandardPaths::writableLocation(QStandardPaths::xxxx)

8、

Qt5 取消了fromAscii() 和toAscii()
;请使用fromLatin1()
和toLatin1()来替代

9、

参考:修改

以上,会持续更新,欢迎指正和提意见
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  qt