Qt是一个跨平台的图形应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的所用功能。Qt是完全的,很容易扩展,并且允许真正地组件。
自从1996年早些时候,Qt进入商业领域,它已经成为全世界范围内数千种成功的应用程序的基础。Qt也是流行的Linux桌面环境KDE 的基础,是所有主要的Linux发行版的一个标准组件。
Qt支持下述:
/ - 95、98、NT 4.0、ME、2000、XP 和 Vista
/X11 - 、 、HP-UX、Compaq Tru64 UNIX、IBM AIX、SGI IRIX和其它很多X11平台
Macintosh - Mac OS X
Embedded - 有帧缓冲(framebuffer)支持的Linux平台,Windows CE。
Symbian/S60 - 目前已经可以提供技术预览版本
Qt是诺基亚公司的一个产品。
Qt被按不同的版本发行:
Q商业版 提供给商业软件开发。它们提供传统商业软件发行版并且提供在协议有效期内的免费升级和技术支持服务。如果要获得最新信息,请浏览诺基亚公司Qt Software网站页面,或者与sales@trolltech.com联系。商业版多一些扩展模块。
Qt开源版是Qt仅仅为了开发自由和开放源码软件, 提供了和商业版本同样的功能。GNU通用公共许可证下,它是免费的。最新的版本可以在这里下载。
从2009年3月发布的Qt 4.5 起,诺基亚将为Qt增添新的开源LGPL授权选择。
关于如何正确的选择这三种授权协议,可以阅读
[1]。
从2009年5月11日起,诺基亚Qt Software 宣布 Qt源代码库面向公众开放,Qt 开发人员可通过为 Qt 以及与 Qt
相关的项目贡献代码、翻译、示例以及其他内容,协助引导和塑造 Qt未来的发展。为了便于这些内容的管理,Qt Software 启用了基于 Git
和 Gitorious 开源项目的Web 源代码管理系统
[2] 。
在推出开放式 Qt 代码库的同时,Qt Software 在其官方网站发布了其产品规划(Roadmap)。其中概述了研发项目中的最新功能,展现了现阶段对 Qt 未来发展方向的观点,以期鼓励社区提供反馈和贡献代码,共同引导和塑造 Qt 的未来。
Qt 4.5版本
Qt 4.5涵盖了一些新的特色,它的最大改进是通过协同作用提升了整个框架的性能。图形系统、数据处理和网络引擎性能显著增强,实现了基于Qt的应用程序性能的明显提升。
Qt 4.5版本还提升了与WebKit页面渲染引擎的集成度,将Web和本地内容融合进丰富的用户体验当中。包括:
Netscape浏览器插件API支持,使Qt应用程序可以载入Flash(例如YouTube播放器) 更先进的Web 用户界面效果,包括动画、转换和缩放 新的JavaScript脚本语言引擎可提供更强的性能
Qt4.5还被移植进了苹果的Cocoa框架。之前的Qt只支持Carbon框架,现在的Qt 4.5两者都支持。这意味着开发人员能够以单一源代码创建出支持32位或64位字节的Intel或PowerPC Mac二进制文件。
Qt Creator
开发人员目前已经可以下载Qt Creator的1.1版本,这是一个用于Qt开发的轻量级跨平台集成开发环境。
Qt
Creator可带来两大关键益处:提供首个专为支持跨平台开发而设计的集成开发环境 (IDE),并确保首次接触Qt框架的开发人员能迅速上手和操作。
Qt Creator包含了一套用于创建和测试基于Qt应用程序的高效工具,包括:
一个高级的C++代码编辑器 上下文感知帮助系统 可视化调试器 源代码管理 项目和构建管理工具
Qt Creator在LGPL 2.1版本授权下有效,并且接受代码贡献。目前的Qt Creator只支持桌面平台(Windows、Linux、Mac操作系统)的Qt开发,但随后数月就能支持嵌入式平台的开发。
2. 为什么选择 QT
2.1 QT 是基於 C++ 的一种语言
相信 C/C++ 目前还是一种很多人都在学习的语言. QT 的好处就在於 QT 本身可以被称作是一种 C++ 的延伸. QT 中有数百个
class 都是用 C++ 写出来的. 这也就是说, QT 本身就具备了 C++ 的快速、简易、Object-Oriented
Programming (OOP)等等无数的优点.
2.2 QT 具有非常好的可移植性(Portable)
QT 不只是可以在 Linux 中运作.也同样可以运行在 Microsoft Windows 中.这也就意味者,利用 QT
编写出来的程式,在几乎不用修改的情况下,就可以同时在 Linux 中和 Microsoft Windows 中运行. QT 的应用非常之广泛,从
Linux 到 Windows 从 x86 到 Embedded 都有 QT 的影子.
3. 什么是 QT Designer
简单的来说 QT Designer 是一个 GUI 的工具. 这个工具可以帮助我们来加快写 QT 程式的速度. 利用 QT Designer
可以用一种所见既所得的方式,来产生 QT 程式的 GUI 介面的程式码. 通过增加一些功能,就可以完成一个程式了.利用 QT Designer
可以非常快速的学会 QT, 而我们这里说利用 QT Designer 来学习 QT 而不是利用 QT Designer 来写 QT,
这里的区别就在於, QT Designer 所产生的程式码有些繁琐. 跑起来也比较的慢些.我们这里只是利用 QT Designer
来帮助我们学习.而不是直接 去跑 QT Designer 生成的程式码.
Qt软件开发工具包 (Qt SDK)
全新的Qt软件开发工具包,可从下载。这个综合套装的设计主旨,是为开发人员提供从一个易于安装的二进制文件包入手,开始跨平台Qt开发这一过程中所需的一切。
Qt SDK包括了
Qt库、Qt Creator IDE和Qt工具,这些都集成在一个易于安装的文件包里。
Qt SDK也同样也支持
Linux/X11, Windows, Mac三种主流桌面操作系统。
Qt的优势
Qt 同 X Window 上的 Motif,Openwin,GTK 等图形界 面库和 Windows 平台上的 MFC,OWL,VCL,ATL 是同类型的东西,但是 Qt 具有下列优点:
优良的跨平台特性:
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/Odevice, directory management, date/time 类。甚至还包括正则表达式的处理 功能。
支持 2D/3D 图形渲染,支持 OpenGL
大量的开发文档
XML 支持
Webkit 引擎的集成,可以实现本地界面与Web内容的无缝集成
但是真正使得 Qt 在自由软件界的众多 Widgets (如 Lesstif,Gtk,EZWGL,Xforms,fltk 等等)中脱颖而出的还是基于 Qt 的重量级软件 KDE 。
http://guojun0681.blog.163.com/blog/static/10051312010101242831130/
阅读(2223) | 评论(0) | 转发(0) |