Qt5.4.2编译 qtpropertybrowser-2.51(从4修改到5的除错过程)
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()替代,但是看清楚这个函数怎么用了,我把
- QList<QtIntPropertyManager *> intPropertyManagers = qFindChildren<QtIntPropertyManager *>(manager);
改成:
- QList<QtIntPropertyManager *> intPropertyManagers = manager->findChildren<QtIntPropertyManager *>();
错误5:
解决方法:把最后一个参数去掉,不要忘了删那个逗号!
错误6:
解决方法:把setMovable()改成setSectionsMovable();把setResizeMode()改成setSectionResizeMode()
错误7:
解决方法,在buildlib.pro文件里面添加下面的代码:
- QT += core gui
- greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
下面是图片展:
https://blog.csdn.net/trustguan/article/details/47004759
Qt5.4.2编译 qtpropertybrowser-2.51(从4修改到5的除错过程)的更多相关文章
- Qt5.5.1和Qt5.3.2编译OCI驱动教程及验证方法
我们都知道oracle数据库的强大,并且好多企业或者教学用到数据库时都会推荐使用.但是Qt因为版权问题没有封装oracle数据库专用驱动,网上也有一大堆说法和教程,但是或多或少的都有问题.下面废话不多 ...
- QGIS3.0.3+Qt5.9+VS2015_x64编译
QGIS3.0.3+Qt5.9+VS2015_x64编译 参考:https://blog.csdn.net/u010670734/article/details/80241615 https://ww ...
- WIN10+QT5.9+VS2015编译RedisDesktopManager
原文:WIN10+QT5.9+VS2015编译RedisDesktopManager 官方源码编译安装说明地址:http://docs.redisdesktop.com/en/latest/insta ...
- Qt5.4静态编译方法
静态编译,就是编译器在编译可执行文件的时候,将可执行文件需要调用的对应动态链接库(.so或.lib)中的部分提取出来,链接到可执行文件中去,使可执行文件在运行的时候不依赖于动态链接库.这样就可以发布单 ...
- qt5.10.1编译记录
qt版本更新比较快,不知道选哪个版本合适,故选择一个较新版本的. 平台imx6 + linux4.1.16 + qt5.10.1 采用明远智睿提供的编译器:fsl-imx-fb-g ...
- QT5.8 VS2017 编译教程(可以使用VS2017 XP兼容包)
1.下载QT5.8源码 这个我不做过多解释. 2.安装使用的环境 visual studio 2017 Python Perl Ruby 安装好,并配置好环境PATH变量. 3.修改错误代码 错误 ...
- Qt5.4.2Mingw编译配置opencv2.4.9
1 下载所需工具 (1)qt-opensource-windows-x86-mingw491_opengl-5.4.2.exe 842M 下载地址https://download.qt.io/arc ...
- QT5.7静态编译(使用VS2013与VS2015编译,XP可用,有详细configure脚本。VS下Qt插件的配置。编译选项加上-mp可以开启多线程编译,编译速度提高2倍以上)
http://blog.csdn.net/u011964923/article/details/52886908 configure -confirm-license -opensource -pla ...
- 【全网首发】使用vs2017+qt5.12.4编译64位debug和release的qgis3.4.9
一.摘要: 搜索网络没有发现一篇文章完整的介绍如何编译qgis3.4.x的debug版本,官方的指导也长时间不再更新. 所以前前后后花了4天搞定qgis的debug编译,并成功运行,废话不多说,直接上 ...
随机推荐
- HDU 2489 Minimal Ratio Tree(prim+DFS)
Minimal Ratio Tree Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Other ...
- 10.Maven依赖排除 禁止依赖传递 取消依赖的方法
转自:https://www.cnblogs.com/duanxz/p/6084494.html 大家都知道Maven的优点是依赖管理,特别是前期使用ANT的开发者都有很多感触.最近要开发一个java ...
- [React] Remove React PropTypes by using Flow Annotations (in CRA)
Starting from v15.5 if we wanted to use React's PropTypes we had to change our code to use a separat ...
- 使用 JS 关闭警告框及监听自定义事件(amaze ui)
使用 JS 关闭警告框及监听自定义事件(amaze ui) 一.总结 1.jquery匿名函数:第8行,jquery匿名函数,$(function(){});,有没有很简单,只是少了jquery的前面 ...
- php课程 1-3 字符串变量输出方式有哪些(总结:四种)
php课程 1-3 字符串变量输出方式有哪些(总结:四种) 一.总结 一句话总结:推荐使用双引号中加{$变量名}的形式(echo "my name is {$name}eee !" ...
- C标签的使用.md
<c:set> 设置变量 <c:set var="a" scope="request" value="${'www'}"/ ...
- 12.1、USB驱动——描述符、URB、管道
大家常说,一个设备通常有多个配置,配置通常有多个接口,接口通常有多个端点.接口代表逻辑上的设备,比如声卡分为 录音和播放.访问设备时,访问的是某个接口(逻辑设备).除了端点0之外,每个端点只支持一个传 ...
- BAPC2014 C&&HUNNU11583:Citadel Construction(几何)
题意: 给出一系列的点,要求寻找最多4个点.使得组成一个面积最大的多边形 思路: 非常显然仅仅有两种情况.要么是三角形,要么是四边形 首先不难想到的是.先要把最外面的点都找出来,事实上就是找凸包 可是 ...
- 《SPA设计与架构》之客户端路由
原文 简书原文:https://www.jianshu.com/p/4d83475f71da 大纲 1.传统路由 2.SPA导航 3.客户端路由器的工作机制 1.传统路由 在传统Web应用程序中,导航 ...
- URL validation failed. The error could have been caused through the use of the browser's navigation
URL validation failed. The error could have been caused through the use of the browser's navigation ...