专业IT网络知识平台,分享IT百科知识、生活百科知识解答!

易企推科技
易企推科技

Qt是什么

来源:小易整编  作者:小易  发布时间:2023-08-20 12:37
摘要:Qt是一个跨平台的C++应用程序开发框架。广泛用于开发GUI程序,这种情况下又被称为部件工具箱。也可用于开发非GUI程序,比如控制台工具和服务器。Qt是一个跨平台的C++应用程序开发框架。广泛用于开发GUI程序,这种情况下又被称为部...

Qt是一个跨平台的C++应用程序开发框架。广泛用于开发GUI程序,这种情况下又被称为部件工具箱。也可用于开发非GUI程序,比如控制台工具和服务器。

Qt是什么

Qt 是一个跨平台的 C++应用程序开发框架。广泛用于开发 GUI 程序,这种情况下又被称为部件工具箱。也可用于开发非 GUI 程序,比如控制台工具和服务器。

Qt 被用于 OPIE、Skype、VLC media player、Adobe Photoshop Elements、VirtualBox 与 Mathematica 以及被 Autodesk、欧洲空间局、梦工厂、Google、HP、KDE、卢卡斯影业、西门子公司、沃尔沃集团, 华特迪士尼动画制作公司、三星集团、飞利浦、Panasonic 所使用。

它是 Digia 公司的产品。Qt 使用标准的 C++和特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏。通过语言绑定,其他的编程语言也可以使用 Qt。

Qt 是自由且开放源代码的软件,在 GNU 宽通用公共许可证(LGPL)条款下发布。所有版本都支持广泛的编译器,包括 GCC 的 C++编译器和 Visual Studio。

历史

Haavard Nord 和 Eirik Chambe-Eng 于 1991 年开始开发“Qt”,1994 年 3 月 4 日创立公司,最早名为 Quasar Technologies,然后更名为 Troll Tech,之后又再次更名为 Trolltech,中文名是“奇趣科技”,2008 年 6 月 17 日被 NOKIA 公司收购,以增强该公司在跨平台软件研发方面的实力,更名 Qt Software。

该工具包名为 Qt 是因为字母 Q 在 Haavard 的 Emacs 字体特别漂亮,而“t”代表“toolkit”,灵感来自 Xt,X toolkit。

2009 年 5 月 11 日,诺基亚 Qt Software 宣布 Qt 源代码管理系统面向公众开放,Qt 开发人员可通过为 Qt 以及与 Qt 相关的项目贡献代码、翻译、示例以及其他内容,协助引导和塑造 Qt 未来的发展。为了便于这些内容的管理,Qt Software 启用了基于 Git 和 Gitorious 开源项目的 Web 源代码管理系统。

在推出开放式 Qt 代码库的同时,Qt Software 在其网站发布了其产品规划(Roadmap)。其中概述了研发项目中的最新功能,展现了现阶段对 Qt 未来发展方向的观点,以期鼓励社区提供反馈和贡献代码,共同引导和塑造 Qt 的未来。2012 年 8 月 9 日,Digia 宣布已完成对诺基亚 Qt 业务及软件技术的全面收购,并计划将 Qt 应用到 Android、iOS 及 Windows 8 平台上。

支持平台

使用 Qt 开发的软件,相同的代码可以在任何支持的平台上编译与运行,而不需要修改源代码。会自动依平台的不同,表现平台特有的图形界面风格。

Linux/X11:用于 X Window System(如 Solaris、AIX、HP-UX、Linux、BSD)。支持 KDevelop 和 Eclipse IDE 集成Mac:用于 Apple Mac OS X。基于 Cocoa 框架。支持 Universal Binary。支持以 Xcode 编辑、编译和测试。Windows:用于 Microsoft Windows。支持 Visual Studio 集成,也可以使用 MinGW 编译Embedded Linux:用于嵌入式 Linux。可以透过编译移除不常使用的组件与功能。透过自己的视窗系统 QWS,不需依赖 X Window System,直接写入 Linux 帧缓冲。可以减少存储器消耗。并提供虚拟帧缓冲 QVFb,方便在桌面系统上进行嵌入式测试。Windows CE / Mobile :用于 Windows CESymbian:用于 Symbian platformMaemo/MeeGo:用于 MaemoWayland –用于 Wayland 显示服务器,Qt 应用程序可以在运行时切换图形后端,如 X 与 Wayland。授权模式

Qt 开放源代码,并且提供自由软件的用户协议。使得它可以被广泛地应用在各平台上的开放源代码软件开发中。

Qt 提供三种授权方式。三种授权方式的功能、性能都没有区别,仅在于授权协议的不同。LGPL 和 GPL 是免费发布,商业版则需收取授权费。

Qt 商业版 – Qt 商业授权适用于开发专属和/或商业软件。此版本适用于不希望与他人共享源代码,或者遵循 GNU 宽通用公共许可证(LGPL)2.1 版或 GNU GPL 3.0 版条款的开发人员。提供了技术支持服务。可以任意的修改 Qt 的源代码,而不需要公开。GNU LGPL v. 2.1- Qt 4.5.0 及以后的版本开始遵循 GNU LGPL。LGPL 允许链接到它的软件使用任意的许可证,可以被专属软件作为类库引用、发布和销售。可以购买支持服务。GNU GPL v. 3.0 – 如果您希望将 Qt 应用程序与受 GNU 通用公共许可证(GPL)3.0 版本条款限制的软件一同使用,或者您希望 Qt 应用程序遵循该 GNU 许可证版本的条款,则此版本 Qt 适用于开发此类 Qt 应用程序。可以购买支持服务。

Qt 的图形用户界面的基础是 QWidget。Qt 中所有类型的 GUI 组件如按钮、标签、工具栏等都派生自 QWidget,而 QWidget 本身则为 QObject 的子类。Widget 负责接收鼠标,键盘和来自窗口系统的其他事件,并描绘了自身显示在屏幕上。每一个 GUI 组件都是一个 widget,widget 还可以作为容器,在其内包含其他 Widget。

QWidget 不是一个抽象类别。并且可以被放置在一个已存在的用户界面中;若是 Widget 没有指定父 Widget,当它显示时就是一个独立的视窗、或是一个顶层 widget。QWidget 显示能力包含了透明化及 Double-Buffering。Qt 提供一种托管机制,当 Widget 于创建时指定父对象,就可把自己的生命周期交给上层对象管理,当上层对象被释放时,自己也被释放。确保对象不再使用时都会被删除。


本文地址:网络知识频道 https://www.hkm168.com/jiqiao/1031373.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!


网络知识
小编:小易整编
相关文章相关阅读
  • 某台微机安装的是64位操作系统中,64位指的是什么

    某台微机安装的是64位操作系统中,64位指的是什么

    某台微机安装的是64位操作系统中,64位指的是cpu的字长,即cpu每次能处理64位二进制数据。字长是cpu的主要技术指标之一,指的是cpu一次能并行处理的二进制位数,字长总是8的整数倍,通常pc机的字长为32位,64位。本教程操作环境:w...

  • c语言是什么意思

    c语言是什么意思

    一:c语言是什么意思C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言,以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低...

  • skype是什么软件

    skype是什么软件

    skype是一种简单的免费软件,使您能够在数分钟之内在世界上的任何角落拨打免费电话,它使用全新的p2p【对等】技术将您与其他skype用户相连接。Skype是一种简单的免费软件,使您能够在数分钟之内在世界上的任何角落拨打免费电话。Sky...

  • 计算机的三类总线分别是什么?

    计算机的三类总线分别是什么?

    计算机的三类总线分别是:控制总线、地址总线和数据总线。控制总线用于将微处理器控制单元的信号,传送到周边设备;地址总线用来指定在ram之中储存的数据的地址;数据总线用于在cpu与ram之间来回传送需要处理或是需要储存的数据。总线(Bus)是计...

  • 2k屏幕是什么意思

    2k屏幕是什么意思

    2k屏幕是指分辨率能够达到2560*1440的屏幕。2k是一个通用术语,指屏幕或者内容的水平分辨率达约2000像素的分辨率等级;又因“16:9”的比例是高清晰度视频规格的国际标准,所以2k分辨率在视频制作、显示屏等领域常见格式为2560*1...

  • mysql中的不等于符号是什么

    mysql中的不等于符号是什么

    mysql中的不等于符号有两种:“!=”和“”;它们都可用于判断数字、字符串、表达式是否不相等。对于“!=”和“”,如果两侧操作数不相等,返回值为1,否则返回值为0;如果两侧操作数有一个是null,那么返回值也是null。本教程操作环境:w...

  • ipad a1822是什么型号

    ipad a1822是什么型号

    ipada1822是苹果ipad第5代的型号;ipad第5代是苹果公司于2017年03月21日在美国加利福尼亚州发布的平板电脑;该机型采用铝镁合金材质一体成型结构;前端外框为白色或黑色;有银色、金色和深空灰色3种外观颜色。本教程操作环境:...

  • html中浮动是什么

    html中浮动是什么

    在html中,浮动就是让元素可以向左或向右移动,直到它的外边距碰到其父级的内边距或者是上一个元素的外边距,只需要给元素设置“float:left|right|none|inherit”样式即可。本教程操作环境:windows7系统、CSS3...

  • 周排行
  • 月排行
  • 年排行

精彩推荐