ubuntu开发图形用户界面

GUI 库有哪些

Windows 下的 GUI 库

Windows 下的 GUI 解决方案比较多:
基于 C++ 的有 Qt、MFC、WTL、wxWidgets、DirectUI、Htmlayout;
基于 C# 的有 WinForm、WPF;
基于 Java 的有 AWT、Swing;
基于 Pascal 的 有Delphi;
基于Go语言的有 walk 和 electron;
还有国内初露头角的 aardio;
Visual Basic 曾经很流行,现在逐渐失去了色彩;
如果你有 Web 开发经验,也可以基于 Webkit 或 Chromium 将网页转换为桌面程序。

用 Qt 来开发 Windows 桌面程序有以下优点:
封装好,可以很简单的实现一个客户端,不需要了解Windows的API。
资料比DirectUI、Htmlayout、aardio丰富。
可以做出来更好看的界面。
独立安装,不需要其他库支撑。
跨平台。
和MFC相比,Qt简单些,不需要关心Windows API

Linux 下的 GUI 库

Linux 下常用的 GUI 库有基于 C++ 的 Qt、GTK+、wxWidgets,以及基于 Java 的 AWT 和 Swing。其中最著名的就是 Qt 和 GTK+:KDE 桌面系统已经将 Qt 作为默认的 GUI 库,Gnome 桌面系统也将 GTK+ 作为默认的 GUI 库。
ubuntu开发图形用户界面_第1张图片

QML

为了适应手机移动应用开发, Qt5 将 QML 脚本编程提到与传统 C++ 部件编程相同的高度,力推 QML 界面编程,当然 QML 主要用于手机移动应用程序。 QML 包含大量使用手机移动设备的功能模块,比如基本部件(QtQuick 模块)、GPS 定位、渲染特效、蓝牙、NFC、WebkKit 等等。

QML 类似于网页设计的 HTML,是一种标记语言,我们可以借助 CSS 对它进行美化,也可以借助 JavaScript 进行交互。有 Web 开发经验的读者学习 QML 将非常轻松。

使用 QML 开发界面主要有以下几个优点:
QML 非常灵活,可以做出非常炫酷的效果,例如 QQ、360、迅雷等都不在话下。
QML 是标记语言,见名知意,非常容易编写和阅读,大大提高了开发和维护效率。
QML 界面简洁大气,有很多动画,适合移动端。

不同平台下的 QML 使用相同的渲染机制,界面效果一致,不会随操作系统的不同而变化。
非也!QML 只能用来进行界面设计和人机交互,也就是只能胜任 UI 部分,在底层仍然需要调用 C++ 编写的组件来完善功能,比如访问数据库、网络通信、多线程多进程、文件读写、图像处理、音频视频处理等都离不开 C++。

什么是Qt

Qt是一个跨平台的c++开发库,主要用来开发图形用户界面(Graphical User Interface.GUI)程序,也可以开发命令行程序。
Qt 支持的操作系统有很多,例如通用操作系统 Windows、Linux、Unix,智能手机系统 Android、iOS、WinPhone, 嵌入式系统 QNX、VxWorks 等等。

Qt可以做什么

除了用户界面交互设计,还包括多线程,访问数据库,图像处理,音频视频处理,网络通信,文件操作等。
Linux桌面KDE基于Qt开发,GNOME基于GTK库开发。

参考资料
Qt教程

你可能感兴趣的:(qt)