2014-09-02 234 views
2

我想将Qt4程序移植到Qt5并且未定义某些函数(例如QHeaderView :: setMoveable),但是我在qheaderview.h文件中看到使用一些magic定义(QT_DEPRECATED_SINCE)应该可以重新启用它们。 为了让QHeaderView :: setMovable重新出现,我必须做些什么?我做不是想要重写我的代码,如果有这样的方式。如何在Qt5中启用不推荐使用的函数

+1

你并不需要重写代码,而只是更换新的旧的函数名。什么问题?这些被弃用的函数可能在Qt的下一个版本中完全消失,那么你会怎么做? – vahancho 2014-09-02 12:06:05

+0

我称之为重写。只要Qt的生产者提供了一种方法来调用已弃用的函数,并且我想与Qt4保持兼容(事实上setMovable函数调用了setSectionsMovable(),而不需要我在源代码中进行调整),我更喜欢这个解决方法 – Leo 2014-09-02 15:34:31

+0

如果您希望在大型项目中兼容Qt4和Qt5,这对于过渡期来说可能是件好事,并且如果要替换所有函数名称,则会以大量预处理器语句结束。如果你可以通过一个简单的.pro行来避免这种情况,那很好。 – galinette 2015-03-13 14:01:14

回答

4

您可以添加到您的.pro文件以下行:

DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0 
相关问题