Qt是什么?
Qt是综合性跨平台的C++应用开发框架,它包括:一个存有400多种图形化用户界面的宏大C++类库、数据库、内核、XML、网络功能、OpenGL、多线程及众多用于以下目的的高级跨平台开发工具:
• GUI版面和表单设计
• 国际化
• 文档
Qt库
Qt 类库拥有构建强健高端应用所需的全部函数
被分为几个模块,Qt的直属API包括:
核心类
GUI类
SQL数据库类
XML类
网络类
OpenGL® 3D图像类
其它还有更多
Qt开发工具
Qt Creator • 用于Qt开发的轻量级跨平台集成开发环境
Qt Designer •强大的拖曳式图形化用户界面排版和设计工具
Qt Linguist • 一整套工具,支持对Qt应用作快捷无误的翻译
Qt Assistant • 可定制可重发布的帮助文件和文档阅读器
qmake • 跨平台makefile生成器
Qt Creator
Qt Creator在所有开发工具中最年轻,但其性能却令Qt开发伙伴们爱不释手。你可以在Qt Creator产品专页中看到这方面的信息。
Qt Designer
Qt Designer是强大的拖曳式图形化用户界面排版和表单构建器
功能
支持表单和对话框的创建,可即时预览
与Qt版面系统集成
宏大的标准widgets集
支持客户定制的widgets和对话框
与Microsoft® Visual Studio .NET无缝集成
优势
大大加快了界面的设计过程
支持所有平台上的本地外观感觉
开发者能在自行选择的工作环境内充分发挥其现有技能
Qt Linguist
Qt Linguist是一组能理顺国际化工作流的工具。
功能
采集所有的用户界面文本并以一个简洁的窗口将其展现给人工译者
支持所有语言
从单一应用的二进制程序内部提供同时多语言支持及同时多写入系统
优势
大大加快了翻译/本地化进程
与Qt的语言敏感排版引擎协同,以创建与语言不相关的简洁一致的界面
轻松应对国际市场
Qt Assistant
Qt Assistant是完全可定制、可重新发行的帮助文件/文档浏览器
功能
简单明快的web浏览器般导航、书签和文档文件连接
支持富文本HTML
全文本关键词查阅
可定制并随Qt供应
优势
无需再从头开始构建帮助系统
充分利用现有的HTML技能
以方便搜寻和导航的格式向最终用户提供文档
qmake
跨平台应用build工具
功能
读取工程源码,生成依赖关系树,生成平台相关工程和makefiles
与Visual Studio及Xcode集成
优势
无需担忧跨平台编译
降低对makefile手工构建的需求度
Qt 术语
Widgets:UI组件(按钮、消息框、应用视窗)
版面管理器:对各种子widgets的自动定位及自动改变大小
信号与槽:对象间通信
事件:系统事件(鼠标点击、键盘,等等)
动作:如,在工具条和菜单中的保存动作
Qt架构
Qt使用本地样式绘制用户界面
精准模拟外观感觉的Widgets也可被开发者改编
构建于平台的底层APIs之上
薄封装的MFC, Motif, Layered工具包。较低的性能表现,较低的灵活性
跨平台
面向多平台的单一源码,仅需重新编译
Qt图形化架构
Qt模块
模块
说明
QtCore
供其他模块使用的非图形化核心类
QtGui
图形化用户界面(GUI)组件
QtNetwork
用于网络编程的类
QtOpenGL
OpenGL支持类
QtScript
用于评估Qt脚本的类
QtSql
使用SQL对数据库进行整合的类
QtSvg
用于显示SVG文件内容的类
QtWebKit
用于显示和编辑web内容的类
QtXml
用于处理XML的类
QtXmlPatterns
用于XML和定制数据模型的XQuery及 XPath引擎
Phonon
多媒体框架类
Qt3Support
Qt 3兼容类
QtDesigner
用于扩展Qt Designer的类
QtUiTools
运行时从 ui-files创建用户界面
QtHelp
用于在线帮助的类
QtAssistant
在线帮助支持
QtTest
用于单元测试的工具类
Qt的优点
一套源码面向多个平台
开发时间少– 进入市场早
降低维护开销
避免开发集体中的操作系统小集团
真正的平台独立性
用几周时间就能应付一个新平台,而非几月
快速响应不断变化的市场需求
与平台变化隔绝
Qt得到了积极的维护和开发,以支持所有最新的主流OS款型
将开发力量集中于增值创新
Qt能提供真正持久的竞争优势
Qt使C++编程加快了,容易了,而且更直观了,因而提高了开发者的效率
Qt部署工具减少了开发过程中通常具有的瓶颈:
图形化用户界面设计和布局- Qt Designer
翻译/本地化- Qt Linguist
文档编制- Qt Assistant
跨平台build系统– qmake
Qt提供了真正意义上的平台自由度– 应付一个新平台按日或周计算,而不是按月或年计算
一套代码基意味着更少的维护时间和开销 – 成倍提高开发产出
在所有平台上对全部源代码的完全可访问性使得开发团队能修订和扩展Qt以满足其独特需求,从而加速开发进程。
原文链接: