首页
学习
活动
专区
圈层
工具
发布

Qt入门之基础篇 ( 一 ) :Qt4及Qt5的下载与安装

参考书目: 【1】霍亚飞.Qt Creator快速入门(第3版).2017年 【2】蔡志明.精通Qt4编程.2008年 【3】普拉达.C++ Primer Plus(第6版).张海龙 译.2012年...安装Qt5方法 安装准备:1. qt-opensource-windows-x86-mingw492-5.6.1.exe 下载地址:http://download.qt.io/official_releases...疑问解答: 问:为什么Qt4和Qt5的安装分开来讲呢?     ...在Qt4时代,这些东西都是分开的,需要开发者们自己动手配置开发环境。而Qt5版本出来之后,将所有需要的东西都整合到了安装包中,并且环境可以自动配置,为开发者减轻了不少负担。...考虑到Qt4和Qt5的安装过程有较大差异,所以有必要分开来讲述一下。 问:Qt很受欢迎吗?为什么要开此教程?

8K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    将某个Qt4项目升级到Qt5遇到的问题

    该Qt4项目以前是使用Qt4.7.4 MSVC2008开发的,因为使用到了OWC10(Office Web Components),使用MSVC编译器的话无法正常升级到Qt4.8.x和Qt5,于是将编译器转成了...还有,Qt5解决了ui_qaxselect.h文件的问题。...在Qt4时代,使用ActiveQt时,老提示没有这个文件,需要自己找到源代码手工uic qaxselect.ui > ui_qaxselect.h来生成一下,Qt5中则解决了该问题。...Qt4中的cleanlooks、plastique、cde、motif等主题样式没有,新加了个fusion,好吧,问题是我的一个项目框架使用的是cleanlooks主题样式然后加自定义样式表,这下可好,...12. .pro文件中的TARGET在Qt4(qmake v2)中是可以不填写的,那么它就从自动采用.pro文件名字,而在Qt5中(qmake v3)这个TARGET不可不写。 13.

    2.1K90

    Qt引入第三方库(亲测Qt4和Qt5)

    这两天看老师发的FFMpeg的示例(先用的是Qt4),爆了一串找不到第三方库的文件,于是我决定找找原因。 然后让Qt4气的要死。。。。。 其中还有不少门路还没理清楚,水很深啊。...老师的栗子就用代码写了,不过那个Qt4好像不认,给我气半死。...,这符号可不好搜啊 (要是愿意用绝对路径也是可以的,就是会比较慢一点) 可以用-L指定目录,-l指定库的名称(无需后缀,.lib,.a, .so都适用)(查别的文档时有看到-L和-l) 相对路径中...,不过Qt4偶尔还是会说找不到库 方法二:采用Qt内设快捷方式 1. ?...有趣的是,在第三步跨向第四步时,会发现Qt4只能检索后缀为 .lib 的库文件,Qt5就没有这个限制了。 我觉得吧,工欲善其事,必先利其器。还是用Qt5吧。

    6.8K30

    Zetcode GUI 教程

    中的事件和信号 PyQt5 中的对话框 PyQt5 小部件 PyQt5 小部件 II PyQt5 拖放 PyQt5 中的绘图 PyQt5 中的自定义小部件 PyQt5 中的俄罗斯方块 Qt4 教程...Qt4 工具包简介 Qt4 实用程序类 Qt4 中的字符串 Qt4 中的日期和时间 在 Qt4 中使用文件和目录 Qt4 中的第一个程序 Qt4 中的菜单和工具栏 Qt4 中的布局管理 Qt4 中的事件和信号...Qt4 小部件 Qt4 小部件 II Qt4 中的绘图 Qt4 中的自定义小部件 Qt4 中的 Breakout 游戏 Qt5 教程 Qt5 工具包简介 Qt5 中的字符串 Qt5 中的日期和时间...Qt5 中的容器 在 Qt5 中处理文件和目录 Qt5 中的第一个程序 Qt5 中的菜单和工具栏 Qt5 中的布局管理 Qt5 中的事件和信号 Qt5 小部件 Qt5 小部件 II Qt5 中的绘图 Qt5...中的自定义小部件 Qt5 中的 Snake Qt5 中的 Breakout 游戏 PySide 教程 PySide 工具包简介 PySide 中的第一个程序 PySide 中的菜单和工具栏 PySide

    3.3K40

    发布Qml宏预处理工具

    为Qml提供部分简单的预处理命令。 0x00 初衷 在不改变和影响原有语法的前提下提高qml开发效率。...有一些qml项目兼顾与Qt4与Qt5版本,由于QML不用编译,但解释在运行时,使预处理指令不能用于直接通过QML。一般采用的方法是直接改文件内容,也就仅限于部分的修改。...如: Qt4版本下: import QtQuick 1.0 在Qt5版本下要修改成: import QtQuick 2.0   如果能像C/C++一样有预处理宏就不用那么麻烦了。...0x01 简单原理 使用python语言实现 和C/C++的#ifdef宏使用基本一样,但需要在其前添加//如: 然后执行脚本将会对预处理语句进行分析,对于符合条件的将会去除//,否则将会添加//。...//#ifdef Qt4 ... //#endif 等价于C/C++宏: #ifdef Qt4 ...

    1.5K10

    Qt5 中的 Json 模块与 JsonCpp 的对比

    工作中有幸做过关于 Qt5 Json 模块向 Qt4 的移植。做过有关 Qt Json 与 JsonCpp 的对比,并做过相关的兼容工作。所以着重研究了一下有关 Json 解析器的相关内容。...注:大家常说的 QJson 其实并不是 Qt 中的模块,而是在 Qt4 没有 Json 模块的年代,一个非官方的第三方模块。对于现在 Qt 中的 Json 模块,官方称之为 Qt Json。...其实 Qt5 中的 Qt Json 模块的代码,写的可以说是严格按照 ECMA-404 协议的解析范本,没有任何自己画蛇添足的逻辑。...) 支持0123456这种数值的解析 支持JsonValue的直接比较 不允许设置默认值,对于无法转换成功的,直接抛异常 错误信息可以定位到具体行列 对于二者的效率,只用了 JsonCpp 项目中的测试用例跑过...另外一部分内容就是 Qt5 Json 向 Qt4 移植,这块的话,还是要稍微看一下源码,改动的话需要调整 Qt4 中的 QString 以及 QAtomicInt 中的一些原子操作,主要是一些琐碎细节,

    2K30

    从零开始的Qt开发指南:(四)Qt 信号与槽拓展:从自定义到连接方式,带你彻底掌握信号与槽的本质

    4.1.3 示例:动态连接与断开 4.2 Qt4 版本信号与槽的连接方式(兼容旧代码) Qt5 推出了基于函数指针的连接方式(如&Student::homeworkFinished),而...虽然 Qt5 完全兼容 Qt4 的语法,但由于字符串方式存在明显缺陷,仅推荐在维护旧代码时使用。...: 4.2.3 Qt4 与 Qt5 连接方式的对比 特性 Qt4(字符串方式) Qt5(函数指针方式) 类型安全 无(运行时检查,拼写错误导致槽函数不执行) 有(编译时检查,错误直接编译报错) 重构支持.../Qt5 均支持 仅 Qt5 及以上支持 4.2.4 为什么不推荐 Qt4 语法?...因此,新代码一律使用 Qt5 的函数指针方式,仅在维护 Qt4 遗留代码时使用 Qt4 语法。

    40810

    解决QML debugging is enabled.Only use this in a safe environment警告

    解决Qml程序中一个非常常见的警告 QML debuggingisenabled.Onlyusethisina safe environment. 为什么会有这个警告?...由于在Qt5以上版本默认开启QML调试器造成的。用于告知用户,这将打开一个到运行QML的Javascript解释器的端口,以便从中获得调试输出。...显然,这会造成一个安全漏洞,所以在不安全的地方使用时应该关闭它(在释放运行时自动关闭)。这个警告是为了提醒你这一点。 注意 Qt4默认不开启QML调试器,而Qt5版本以上默认开启。...Internet上的任何人都可以连接到正在调试和执行任何JavaScript函数的应用程序。因此,您必须确保端口受到防火墙的适当保护。...直接关闭QML调试器: Qt4版本: CONFIG -= declarative_debugQt5版本: CONFIG -= qml_debug 在界面"项目"->"构建步骤"->"Enable QML

    5.9K20

    从零开始的Qt开发指南:(三)信号与槽的概念与使用

    signal:要发送的信号,格式为SIGNAL(信号函数签名)(Qt4 风格)或&类名::信号函数名(Qt5 风格,推荐)。 receiver:信号的接收者,同样必须是QObject子类的实例指针。...method:要关联的槽函数,格式为SLOT(槽函数签名)(Qt4 风格)或&类名::槽函数名(Qt5 风格,推荐)。...2.1.3 Qt5 与 Qt4 连接方式对比 Qt5 推荐使用函数指针语法(&类名::函数名)进行信号槽关联,相比 Qt4 的宏语法(SIGNAL()/SLOT())有明显优势: 特性...Qt5 函数指针语法 Qt4 宏语法 类型检查 编译时进行严格类型检查,错误早发现 仅运行时检查,错误难排查 代码可读性 清晰直观,直接关联函数 依赖字符串宏,易拼写错误 支持重载函数 可通过函数指针明确指定重载版本...不支持直接关联重载函数 兼容性 兼容 Qt5 及以上版本 兼容 Qt4 和 Qt5,但不推荐使用 因此,本文所有示例均将采用 Qt5 推荐的函数指针语法。

    37010

    QT教程三 信号与槽

    , &QObject::method); Qt4的连接方式 这种旧的信号槽连接方式在Qt5中是支持的, 但是不推荐使用, 因为这种方式在进行信号槽连接的时候, 信号槽函数通过宏SIGNAL和SLOT转换为字符串类型...,Qt5的方式却有问题了呢?...Qt4的方式在传信号和槽的时候用了宏进行强转,而且都带了参数,不会有二义性问题产生 Qt5中,信号和槽都有重载,此事connect函数根本就不知道你要使用的是重载中的哪一个,所以只能报错咯!...如何解决Qt5中的信号和槽重载中的二义性问题呢?..., Qt4的信号槽连接方式不受影响 当信号槽函数被重载之后, Qt5中需要给被重载的信号或者槽定义函数指针 4.3 Lambda表达式 QPushButton*btn = new QPushButton

    89010

    Qt Quick开发(QML,CMake企业级实战项目)

    虽然几经易手,Qt在digia公司这些年的努力迭代更新下,Qt Quick终于迎来了成熟稳定的版本(这也是我愿意在最近的项目里转用它的原因)。...Qt Quick是一些新UI技术的集合,主要由3部分组成:Qt Creator IDE ( 包含 Qt Quick 设计器 )、QML语言、Qt库中的QtDeclarative模块(Qt4),QML是对...C++接口,可以用来在Qt/C++应用程序中加载QML文件并与之通信(QtDeclarative Module的作用就是将QML元素与以前的标准C++类相结合)   Qt5图形引擎基于GPU,应用开发套件...Qt Quick2(适用于触摸屏的UI开发),增加了对C++11支持,加强了对JavaScript和QML的支持,可以混合编程,Qt5是Qt4渐进而平缓的升级,与Qt4高度兼容  Qt5下,QWidget...系列从QtGui中被剥离出去,成为单独的QtWidget模块,随着Qt Quick2的引入,QtDeclarative也逐渐和QWidget系列脱离关系,在Qt5下的GUI编程,有两套不同的东西:QtWidget

    1.7K10
    领券