qtpropertybrowser是一个洛基亚时代的一个产物,其实它就是QtDesigner侧栏那种样子而已。网上大部分的都只适用于Qt4,今天头脑发热想用Qt5编译一下,发觉一大堆错误,因为Qt4有些函数在Qt5里面是没有的,所以不断地找替代函数。当我辛辛苦苦编译出来后,在网上一搜,大把人发布了修改过后的源代码,可以支持Qt5编译,晕死了,早知道就不用那么辛苦了。不过也记录一下怎么去编译好了,下面只讲在编译时候出错的解决方法:

拿到源码不能把qtpropertybrowser.pro拉到Creator里面,要把buildlib文件夹的buildlib.pro拉到Creator里面。

错误1:

解决方法:地球人都知道Qt5跟Qt4很明显的不同就是这个,所以把#include <QtGui/QWidget>改成#include <QtWidgets/QWidget>

错误2:

解决方法:如果你看看Qt4的源码就知道Q_TYPENAME被定义成typename ,所以直接把Q_TYPENAME替换成typename

错误3:

解决方法:这个qVariantValue()已经被Qt5弃用了,可以用qvariant_cast()替换掉它,说到这里大家要好好利用Creator里面的查找替换功能,不然改死你~~~

错误4:

解决方法:很明显qFindChildren()被废除了,可以用findChildren()替代,但是看清楚这个函数怎么用了,我把

  1. QList<QtIntPropertyManager *> intPropertyManagers = qFindChildren<QtIntPropertyManager *>(manager);

改成:

  1. QList<QtIntPropertyManager *> intPropertyManagers = manager->findChildren<QtIntPropertyManager *>();

错误5:

解决方法:把最后一个参数去掉,不要忘了删那个逗号!

错误6:

解决方法:把setMovable()改成setSectionsMovable();把setResizeMode()改成setSectionResizeMode()

错误7:

解决方法,在buildlib.pro文件里面添加下面的代码:

  1. QT       += core gui
  2. greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

下面是图片展:

https://blog.csdn.net/trustguan/article/details/47004759

Qt5.4.2编译 qtpropertybrowser-2.51(从4修改到5的除错过程)的更多相关文章

  1. Qt5.5.1和Qt5.3.2编译OCI驱动教程及验证方法

    我们都知道oracle数据库的强大,并且好多企业或者教学用到数据库时都会推荐使用.但是Qt因为版权问题没有封装oracle数据库专用驱动,网上也有一大堆说法和教程,但是或多或少的都有问题.下面废话不多 ...

  2. QGIS3.0.3+Qt5.9+VS2015_x64编译

    QGIS3.0.3+Qt5.9+VS2015_x64编译 参考:https://blog.csdn.net/u010670734/article/details/80241615 https://ww ...

  3. WIN10+QT5.9+VS2015编译RedisDesktopManager

    原文:WIN10+QT5.9+VS2015编译RedisDesktopManager 官方源码编译安装说明地址:http://docs.redisdesktop.com/en/latest/insta ...

  4. Qt5.4静态编译方法

    静态编译,就是编译器在编译可执行文件的时候,将可执行文件需要调用的对应动态链接库(.so或.lib)中的部分提取出来,链接到可执行文件中去,使可执行文件在运行的时候不依赖于动态链接库.这样就可以发布单 ...

  5. qt5.10.1编译记录

    qt版本更新比较快,不知道选哪个版本合适,故选择一个较新版本的. 平台imx6    +    linux4.1.16   +   qt5.10.1 采用明远智睿提供的编译器:fsl-imx-fb-g ...

  6. QT5.8 VS2017 编译教程(可以使用VS2017 XP兼容包)

    1.下载QT5.8源码 这个我不做过多解释. 2.安装使用的环境 visual studio 2017  Python Perl  Ruby 安装好,并配置好环境PATH变量. 3.修改错误代码 错误 ...

  7. Qt5.4.2Mingw编译配置opencv2.4.9

    1 下载所需工具 (1)qt-opensource-windows-x86-mingw491_opengl-5.4.2.exe  842M 下载地址https://download.qt.io/arc ...

  8. QT5.7静态编译(使用VS2013与VS2015编译,XP可用,有详细configure脚本。VS下Qt插件的配置。编译选项加上-mp可以开启多线程编译,编译速度提高2倍以上)

    http://blog.csdn.net/u011964923/article/details/52886908 configure -confirm-license -opensource -pla ...

  9. 【全网首发】使用vs2017+qt5.12.4编译64位debug和release的qgis3.4.9

    一.摘要: 搜索网络没有发现一篇文章完整的介绍如何编译qgis3.4.x的debug版本,官方的指导也长时间不再更新. 所以前前后后花了4天搞定qgis的debug编译,并成功运行,废话不多说,直接上 ...

随机推荐

  1. eclipse-hierarchyviewer 不能使用

    今天安装了adt-bundle以后,发现hierarchyviewer不能用.点开了以后连手机没有效果.后来发现,还需要进入hierarchyviewer所在的sdk目录进行下权限的设置 chmod ...

  2. Android实现微信分享及注意事项

    一.获取帮助文档并下载相关资料 首先打开微信开放平台:https://open.weixin.qq.com/ 如果没有注册,请先注册并上传开发者资料等待审核. 资源中心----移动应用开发----分享 ...

  3. Android .getRGB得到是负数,解决方案

    情景:ava.awt.color 下面的getRGB怎么得出的是负数???本来想通过getRGB得到一个整数,在另外的一个部分在根据这个整数构件一个color,因为参数规定只能能传整数!!!color ...

  4. 【习题 6-8 UVA - 806】Spatial Structures

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 写两个dfs模拟就好. 注意每12个数字输出一个换行.. [代码] /* 1.Shoud it use long long ? 2. ...

  5. HDU——T 3501 Calculation 2

    http://acm.hdu.edu.cn/showproblem.php?pid=3501 Time Limit: 2000/1000 MS (Java/Others)    Memory Limi ...

  6. c++中的相对路径

           今天在vs2010里读取相对路径下的图片文件出了点问题.于是查了一下相对路径的编程知识,记录下来分享给大家:      问题描写叙述:path=".\\TrainData\\& ...

  7. 适用android的MVP:怎样组织展示层

    原文 MVP for Android:How to organize presentation layer http://antonioleiva.com/mvp-android/ 译文 MVP(Mo ...

  8. vue 用 :style动态修改带中划线的样式属性

    今天在项目中遇到要用:style动态设置margin-top值,直接写发现报错.后来改成驼峰就成功了,记录一下 错误示范: <div class="testLeft ulData&qu ...

  9. Android之怎样用代码使编辑框等组件显示为圆角

    圆角button实现 圆角button大家很常见.有时候你可能会使用ps来加工圆角图片来实现想要的效果, 今天通过简短的代码来达到这样的效果.(由于这个跟project无关.仅仅是一种效果,所以我就单 ...

  10. Codeforces Round #315 (Div. 2) (ABCD题解)

    比赛链接:http://codeforces.com/contest/569 A. Music time limit per test:2 seconds memory limit per test: ...