评论删除后,数据将无法恢复
Qt 是一种更快,更智能的方式来为多个屏幕创建创新的设备、现代用户界面和应用程序。它是一个跨平台的C++应用程序开发框架。它提供给开发者建立图形用户界面所需的功能,广泛用于开发图形用户界面程序,也可用于开发非图形用户界面(比如命令行界面)程序。Qt是完全面向对象的,很容易扩展,并且允许真正地组件编程。
基本上,Qt 同 X11上的GTK、Motif、Openwin和Windows上的MFC,OWL,VCL,ATL 是同类型的东西,但是 Qt 支持更多的平台(包括Windows、GNU/Linux、Mac OS X、Android、iOS、WinCE、Unix家族等),面向对象且模块化程度更高(Qt 提供了一种称为 signals/slots 的安全类型来替代 callback,这使得各个元件 之间的协同工作变得十分简单)。
丰富的API(Qt 包括多达 250 个以上的 C++ 类,还替供基于模板的 collections, serialization, file, I/O device, directory management, date/time 类。甚至还包括正则表达式的处理 功能),支持 2D/3D 图形渲染,支持 OpenGL、大量的开发文档、XML支持等。
Qt的特点
- 优良的跨平台特性
- 支持面向对象
- 丰富的 API
- 支持 2D/3D 图形渲染,支持 OpenGL
- 大量的开发文档
- XML 支持
我们所使用的 Qt,确切地说也就是它的 GUI 编程部分。C++ 的 GUI 编程同 Java 不同:GUI 并不是 C++ 标准的一部分。所以,如果使用 Java,那么你最好的选择就是 AWT/Swing,或者也可以使SWT/JFace,但是,C++ 的 GUI 编程给了你更多的选择:wxWidWget、GTK++ 以及 Qt。
Qt Creator
Qt Creator是一个用于Qt开发的轻量级跨平台集成开发环境。Qt Creator可带来两大关键益处:提供首个专为支持跨平台开发而设计的集成开发环境,并确保首次接触Qt框架的开发人员能迅速上手和操作。即使不开发Qt应用程序,Qt Creator也是一个简单易用且功能强大的集成开发环境。Qt Creator包含了一套用于创建和测试基于Qt应用程序的高效工具,包括:
- C++代码编辑器
- 上下文感知帮助系统
- 可视化调试器
- 源代码管理
- 项目和构建管理工具
Qt Linguist被称为Qt语言家。它的主要任务只是读取翻译文件、为翻译人员提供友好的翻译界面,它是用于界面国际化的重要工具。 Qt Linguist工具从4.5开始可以支持Gettext的PO文件格式。
Qt 和智能手机
Qt 目前支持主流的 Android、iOS、WinPhone 等智能机操作系统。MeeGo 是基于 Qt 开发的操作系统,由于被诺基亚抛弃了, 只剩一代绝版诺基亚 N9 手机。诺基亚手机部门出售给微软之后,大部分诺基亚手机系统开发人员都被遣散了。
原来诺基亚的一部分人成立新的 Jolla(卓蓝)公司,发布了 MeeGo 的衍生版智能手机系统 Sailfish(旗鱼),相应的手机和平板也发布开卖了。另一拨人投靠了 Tizen(泰泽),Tizen 是英特尔和三星力推的智能手机系统,该系统整合了 Limo 和 MeeGo,因为 MeeGo 系统被诺基亚抛弃,英特尔其实是被出卖了,所以只能联合三星重造智能手机系统 Tizen。
目前基于 Tizen 的首款手机三星 Z1 在印度上市了。在 Tizen 阵营,国内有中兴、百度涉及了。 Qt 公司有专门针对移动开发的商业版本,20 欧元或 25 美元一个月。不做商业可以无视这个,用开源版本也是可以开发如 Android、iOS、WinPhone 应用的。
应用范围
Qt 虽然经常被当做一个 GUI 库,用来开发图形界面应用程序,但这并不是 Qt 的全部;Qt 除了可以绘制漂亮的界面(包括控件、布局、交互),还包含很多其它功能,比如多线程、访问数据库、图像处理、音频视频处理、网络通信、文件操作等,这些 Qt 都已经内置了。
Qt 是应用程序开发的一站式解决方案,有了 Qt,你就可以高枕无忧了!Qt 本身包含的模块也日益丰富, 一直有新模块和第三方模块加入进来。 大部分应用程序都可以使用 Qt 实现,除了与计算机底层结合特别紧密的,例如驱动开发,它直接使用硬件提供的编程接口,而不能使用操作系统自带的函数库。
下面的软件都使用 Qt 开发:WPS、YY语音、Skype、豆瓣电台、虾米音乐、淘宝助理、千牛、暴雪的战网客户端、VirtualBox、Opera、咪咕音乐、谷歌地图、Photoshop Album 等。 Linux 也是嵌入式的主力军,广泛应用于消费类电子、工业控制、军工电子、电信/网络/通讯、航空航天、汽车电子、医疗设备、仪器仪表等相关行业。
Qt 虽然也支持手机操作系统,但是由于 Android 本身已经有 Java 和 Kotlin,iOS 本身已经有 Objective-C 和 Swift,所以 Qt 在移动端的市场份额几乎可以忽略。总起来说,Qt 主要用于桌面程序开发和嵌入式开发。
Lars Knoll 为 Qt 首席维护者找到了接班人
Lars Knoll 是 Qt 公司的首席技术官和首席维护者,上个月他宣布从 Qt 离职,并辞去长期担任的 Qt 首席维护者职位。 经过 Qt 开发者的投票,新的维护者已经产生——Volker Hilsheimer 现在将成...

Qt 6.4 Beta 发布,新增 HTTP Server & 3D Physics 模块
Qt 6.4 发布了首个 Beta 版本,正式版预计于 9 月底推出。 与 Qt 6.3 相比,Qt 6.4 增加了三个模块,分别是: Qt HTTP Server Qt Quick 3D Physics Qt VNC Server Qt HTTP Server 和 Qt Qui...

22 年老将,Qt 公司 CTO 选择离职创业
Lars Knoll 是 Qt 公司的首席技术官和首席维护者,他也是 KHTML(Webkit 的前身) 的创建者,Lars Knoll 于今天在个人社交媒体发布公告,表示将离开 Qt 公司,之后他会加入一家创业公司开启新...

Qt 6.3 正式发布,添加 Qt 快速编译器、大量 Qt Quick 控件
Qt 6.3 发布了,与往常一样,该版本包含许多新功能以及大量 Bug 修复:自 Qt 6.2 发布以来修复了用户报告的总共 1750 个错误。下面摘录较为重要的新功能作介绍: Qt Quick 编译器 新的 Qt 快...

Qt 5.15 LTS 支持周期延长至 5 年
Qt Company 近日宣布他们将延长 Qt 5.15 LTS 长期支持版本的支持年限,即在原计划的 2023 年的基础上再延长两年,至 2025 年。 Qt 5.15 LTS 于 2020 年 5 月发布,按照 Qt 的原计划以及以往的...

Qt 2022 年路线图:继续增强 Qt for WebAssembly、发力汽车领域
Qt 6.2 于 2021 年 9 月发布,这是 Qt 6 系列的第一个长期支持 (LTS) 版本。现在,随着 Qt 6.3 的开发工作接近尾声,官方开始规划 Qt 的未来发展,并公布了 Qt 的 2022 路线图。 路线图中提到...

KDAB 推出 CXX-Qt ,为 Qt 提供安全的 Rust 语言绑定
专注于 KDE/Qt 的科技公司 KDAB 一直在努力改进 Rust 与 Qt 工具包的集成,近日他们推出了 CXX-Qt ,称该工具可为 Qt 提供安全的 Rust 语言绑定。 Rust 拥有 C/C++ 欠缺的内存安全性,且拥有...

商业化的 Qt 5.15.3 LTS 作为开源发布
Qt 公司发布了 Qt 5.15.3 LTS 的免费开源版本。2021 年,该公司宣布从 1 月 5 日起将 Qt 5.15 作为仅供商业化的 LTS,彼时现有的 Qt 5.15 分支将公开可见,但不会看到任何新补丁,只有付费账...

Qt 简化商业授权方案
Qt 公司正在积极探索改进其产品多样性和提升财务业绩的方法,除了最近的 Qt Digital Advertising 1.0(Qt 数字广告 1.0),近日它还宣布简化其商业授权方案。 Qt 现在已将其面向开发者的商业...

Qt 6.3 首个 Beta 测试版发布
Qt 6.3 首个 Beta 测试版已发布,正式版计划在 3 月底或者 4 月初推出。 Qt 6.3 新增的 Modules: Qt Language Server:实现了 Language Server Protocol Specification 和 JsonRpc 2.0 协议...

没有更多内容
加载失败,请刷新页面
我在win10、QT5.12.12mingw下使用CTK框架进行插件开发。 参考帖子完成了CTK的编译安装。https://www.ebaina.com/...

使用QT5开发的应用程序,在linux下环境如何生成类似于windows下dump文件的应用程序堆栈信息文件,以便在应用程序崩溃的时候排查崩溃原因。
使用Qt5.9.6版本在linux系统上开发的应用程序,要实现文本转语音的功能,使用到了Qt的QTextToSpeech类,但是只能播放英文的,不能播放中...
使用qt开发的应用程序,在linux系统中如何获取键盘上CapsLock按键的状态
最近写的xls属性过滤器中,因为要读取大量的数据,用的是QT中的QAxobject来打开获取xls的各类指针: [align=center] QAxObj...
日志名称: Application 来源: Application Error 日期: 2020/9/11 11:13:58 事件 ID: 1000 任务...
如果widget上面有5个Label,这个5个Label的objectName是分别为Label1、Label2、Label3、Label4、Label5...
没有更多内容
加载失败,请刷新页面
