一、qt简介
- Qt [1] 是一个1991年由Qt Company开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,Qt很容易扩展,并且允许真正地组件编程。
2008年,Qt Company科技被诺基亚公司收购,Qt也因此成为诺基亚旗下的编程语言工具。2012年,Qt被Digia收购。
2014年4月,跨平台集成开发环境Qt Creator 3.1.0正式发布,实现了对于iOS的完全支持,新增WinRT、Beautifier等插件,废弃了无Python接口的GDB调试支持,集成了基于Clang的C/C++代码模块,并对Android支持做出了调整,至此实现了全面支持iOS、Android、WP,它提供给应用程序开发者建立艺术级的图形用户界面所需的所有功能。基本上,Qt 同 X Window 上的 Motif,Openwin,GTK 等图形界面库和 Windows 平台上的 MFC,OWL,VCL,ATL 是同类型的东西。
二、qt下载
2.1、官网地址:https://www.qt.io/
2.2、下载
2.3、https://download.qt.io/official_releases/online_installers/
三、qt安装
3.1、登录账号,没有账号自己注册
3.2、我是个人安装,如果是公司填写公司名字
3.3、欢迎界面
3.4、禁止发送一些信息
3.5、自定义选择安装目录
3.6、版本不全可以筛选
3.7、自定义安装版本
3.8、协议
3.9、默认安装
3.10、准备安装
3.11、安装中
3.12、完成安装
四、发展史
- 1991年,Haavard Nord和Eirik Chambe-Eng开始开发将会支持X11和Windows的Qt
- 1994年,Qt Company成立
- 1996年,KDE项目由MatthiasEttrich创建(Matthias现为诺基亚Qt发展框架工作)
- 1998年4月5日,Trolltech的程序员在 5 天之内将 Netscape5.0 从Motif移植到 Qt 上
- 1998年4月8日,KDE Free Qt 基金会成立
- 1998年7月9日,Qt 1.40 发布
- 1998年7月12日,KDE 1.0 发布
- 1999年3月4日,QPL1.0 发布
- 1999年3月12日,Qt 1.44 发布
- 1999年6月25日,Qt 2.0 发布
- 1999年9月13日,KDE 1.1.2 发布
- 2000年3月20日,嵌入式Qt 发布
- 2000年9月6日,Qt 2.2 发布
- 2000年10月5日,Qt 2.2.1 发布
- 2000年10月30日,Qt/Embedded 开始使用GPL宣言
- 2000年9月4日,Qt free edition 开始使用 GPL
- 2008年,Nokia从Trolltech公司收购Qt,并增加LGPL的授权模式
- 2011年,Digia从Nokia收购了Qt的商业版权,从此Nokia负责Qt on Mobile,,Qt Commercial由Digia负责
- 根据最新消息,NOKIA已经停止Meltemi系统开发,Qt部门被解散
- 2012年8月9日,作为非核心资产剥离计划的一部分,诺基亚宣布将Qt软件业务出售给芬兰IT服务公司Digia。
- 2013年7月3日,Digia公司Qt开发团队在其官方博客上宣布Qt 5.1正式版发布。
- 2013年12月11日,Digia公司Qt开发团队宣布Qt 5.2正式版发布。
- 2014年4月,Digia公司Qt开发团队宣布Qt Creator 3.1.0正式版发布。
- 2014年5月20日,Digia公司Qt开发团队宣布Qt 5.3正式版发布。
- 2019年,Qt团队宣布最新版5.13版本发布。
优良的跨平台特性:
Qt支持下列操作系统: Microsoft Windows 95/98, Microsoft Windows NT, Linux, Solaris, SunOS, HP-UX, Digital UNIX (OSF/1, Tru64), Irix, FreeBSD, BSD/OS, SCO, AIX, OS390,QNX 等等。
面向对象
Qt 的良好封装机制使得 Qt 的模块化程度非常高,可重用性较好,对于用户开发来说是非常方便的。 Qt 提供了一种称为 signals/slots 的安全类型来替代 callback,这使得各个元件之间的协同工作变得十分简单。
丰富的 API
Qt 包括多达 250 个以上的 C++ 类,还提供基于模板的 collections, serialization, file, I/O device, directory management, date/time 类。甚至还包括正则表达式的处理功能。
支持 2D/3D 图形渲染,支持 OpenGL
大量的开发文档
XML 支持。