QT——概述

<1>, Qt概述

Qt 是⼀个 跨平台的 C++ 图形⽤⼾界⾯应⽤程序框架

Qt ⽀持多种开发⼯具,其中⽐较常⽤的开发⼯具有:Qt Creator、Visual Studio、Eclipse.

一,Qt Creator 集成开发环境(IDE)

Qt Creator 是⼀个轻量级的跨平台集成开发环境(IDE),专为使⽤ Qt 框架进⾏应⽤程序开发⽽设计。

它是⼀个功能强⼤、易于使⽤、快速且⾼效的⼯具,被⼴泛⽤于编写各种类型的应⽤程序,如桌⾯应⽤程序、移动应⽤程序和嵌⼊式系统等。

Qt Creator 提供了⼀个可视化的界⾯设计器和代码编辑器,可以帮助开发者更快捷地创建复杂的⽤⼾界⾯和处理各种事件。

它还包含了调试⼯具、版本控制⼯具、⾃动完成和智能提⽰等功能,以及⽀持多语⾔和跨平台的开发环境。

二,Qt Creator 的主要特点包括:

• 紧密集成的 Qt 框架:Qt Creator 专⻔为 Qt 开发⽽设计,因此它与 Qt 框架集成得⾮常紧密,使开发者可以更容易地管理和部署他们的应⽤程序。

• 强⼤的编辑器:Qt Creator 具有⼀些先进的编辑器功能,如语法⾼亮、代码折叠、智能提⽰、⾃动完成和代码重构。

• 集成的调试器:Qt Creator 内置了调试器,允许开发⼈员在代码中设置断点以及检查变量、堆栈和调⽤树等信息。

• ⾼效的构建系统:Qt Creator 提供了⼀个⾼效的构建系统,可以⾃动构建和部署应⽤程序,同时⽀持使⽤不同的编译器和平台。

• 可视化界⾯设计器:Qt Creator 具有⼀个可视化界⾯设计器,它允许开发⼈员在没有编写代码的情况下创建复杂的⽤⼾界⾯。

• 多语⾔⽀持:Qt Creator ⽀持多种编程语⾔,包括 C++、QML、JavaScript 等。

总⽽⾔之,Qt Creator 是⼀个功能⻬全、易于使⽤且⾼效的跨平台 IDE,适⽤于桌面应用开发者。不仅仅支持Windows,也支持Linux,还支持Mac。运行效率不低,还能跨平台,属于六边战士。

三,客户端开发的主要任务:

编写和用户交互的界面,两种用户交互界面,两种典型的风格:

1, (专业软件:给程序员用的) 命令行界面/终端界面(黑框框)=> TUI (Text-based User Interface)

2, (通用软件:给普通用户用的)图形化界面 => GUI (Graphical User Interface)

四,windows 下有哪些方案,可以开发GUI

基于C/C++搭建出来的GUI开发技术框架

1,windows API 系统提供的原生API,开发起来非常原始,也非常繁琐。

2, MFC (上世纪90年代)当年影响非常深远

3, VC 6.0 经典开发环境

4, QT (1991年左右)诞生了,现在还在更新

5,还有 GTK,WxWidget 等等

6, 后来微软自己搞的编程语言 C# (C sharp)

7, windows From 是微软给C# (.net) 量身定做的一套开发GUI技术体系

8, 微软接着推出了 WPF/UWP (C# 的升级版)

9, Electron 本质上是把基于 HTML 网页,打包成 windos 上运行的客户端程序 (这个技术体系,最初是GiHub 开发的"atom",后来被微软的 VSCode 干掉了)

五、Qt支持的平台

• Windows ‒ XP、Vista、Win7、Win8、Win2008、Win10

• Unix/X11 ‒ Linux、Sun Solaris、HP-UX、Compaq Tru64 UNIX、IBM AIX、SGI IRIX、FreeBSD、 BSD/OS、和其他很多 X11 平台

• Macintosh ‒ Mac OS X

• Embedded ‒ 有帧缓冲⽀持的嵌⼊式 Linux 平台,Windows CE

• Android ‒ 移动设备操作系统

六,Qt 的应用场景

• 桌⾯应⽤程序

Qt 能够创建各种类型的桌⾯应⽤程序,包括⽂件管理器、媒体播放器、绘图程序等。Qt 应⽤程序⽀持多种操作系统,可以运⾏在 Windows、Linux、macOS 等桌⾯操作系统上。

• 移动应⽤程序

Qt ⽀持 Android 和 IOS 移动操作系统,为应⽤程序提供了强⼤的跨平台能⼒。可以使⽤ Qt 构建各种移动应⽤程序,例如社交应⽤、游戏、娱乐等。

• 嵌⼊式系统

Qt 在嵌⼊式领域应⽤⾮常⼴泛,它可以构建⾯向各种设备的图形应⽤程序,在机顶盒、⻋载娱乐系统、安防监控设备等领域具有⼴泛的应⽤。

七,Qt的成功案例

1,Linux 桌⾯环境 KDE

2,WPS Office 办公软件

3,Skype ⽹络电话

4,Google Earth ⾕歌地图

5,VLC 多媒体播放器

6,VirtualBox 虚拟机软件

7,剪映

相关推荐
Edingbrugh.南空39 分钟前
Aerospike与Redis深度对比:从架构到性能的全方位解析
java·开发语言·spring
CodeCraft Studio1 小时前
借助Aspose.HTML控件,在 Python 中将 HTML 转换为 Markdown
开发语言·python·html·markdown·aspose·html转markdown·asposel.html
QQ_4376643141 小时前
C++11 右值引用 Lambda 表达式
java·开发语言·c++
aramae1 小时前
大话数据结构之<队列>
c语言·开发语言·数据结构·算法
封奚泽优2 小时前
使用Python实现单词记忆软件
开发语言·python·random·qpushbutton·qtwidgets·qtcore·qtgui
liulilittle3 小时前
C++/CLI与标准C++的语法差异(一)
开发语言·c++·.net·cli·clr·托管·原生
daixin88483 小时前
什么是缓存雪崩?缓存击穿?缓存穿透?分别如何解决?什么是缓存预热?
java·开发语言·redis·缓存
程序员编程指南3 小时前
Qt 数据库连接池实现与管理
c语言·数据库·c++·qt·oracle
你我约定有三3 小时前
RabbitMQ--消息丢失问题及解决
java·开发语言·分布式·后端·rabbitmq·ruby
张北北.3 小时前
【深入底层】C++开发简历4+4技能描述6
java·开发语言·c++