Linux 程序图形工具包
Linux 现在已成为现实——它不再仅仅是黑客工具或学生的玩具。因此,它需要将控制台程序的功能移植到图形世界。人们想要易于使用的桌面和美观的程序。这就是为什么现在许多程序员转向图形工具包。
虽然有很多工具包可用,但它们都共享一些基本功能。由于编程语言不包含创建图形小部件的内置函数,因此您必须使用附加组件。图形工具包实际上是库,它们向编程语言添加函数,使您能够将图形界面集成到您的程序中。
各种工具包之间的主要区别在于易用性、图形吸引力、跨平台可移植性和语言。例如,如果您精通 Tcl 脚本语言,您可能想要使用 Tk 图形工具包。如果您喜欢 Perl,您可以选择 Perl/GTK。
GTK 工具包似乎是最受欢迎的工具包之一。它很现代且易于使用。该库是用 C 语言编写的,作为图像处理程序 GIMP 的基础。现在,世界各地的程序员都在使用它来开发各种应用程序,包括 GNOME 桌面环境。图形界面看起来简洁,非常像其他操作系统上的界面。
GTK 是用 C 语言编写应用程序的一个很好的工具包,因为它是一个 C 库。GTK 工具包构建在 GDK 库之上,而 GDK 库又构建在 GLIB 之上。这三者都为程序员提供了独特的功能。可用功能包括内存处理、图形组件和小部件。GNOME 也有自己的扩展。GTK 和 GNOME 都是免费提供的软件产品。
GTK 库可在 https://gtk.org.cn/ 获取。GTK 教程可在 https://gtk.org.cn/tutorial1.2/ 获取。
QT 工具包由挪威的软件公司 Troll Tech 创建,并在 KDE 桌面环境中使用。它用 C++ 编写,并被世界各地的程序员使用。QT 库最初是商业产品,但现在 Troll Tech 已经发布了基于开放许可的免费版本。与 GTK 类似,它具有相同类型的小部件,包括标签、输入框和文本字段。如果您用 C++ 编写应用程序,QT 将是一个不错的选择。QT 库是跨平台的,使用它的程序的图形界面在 UNIX 和 Microsoft Windows 中编译时都不会发生更改。
QT 小部件看起来非常像 GTK 的小部件,以及其他操作系统的小部件。
QT 库可从 http://www.troll.no/ 获取。QT 教程可从 www.troll.no/qt/tutorial.html 获取。
wxWindows(w 代表 Windows,x 代表 X Window System)是在爱丁堡大学创建的跨平台工具包。wxWindows 是一个 C++ 框架,允许您编写图形应用程序。您可以编写一次代码,然后在库的许多端口之一中编译它。它目前在 Microsoft Windows、Macintosh OS、UNIX 下的 Motif 和 GTK 下运行。每个平台都有一个库,所有库都提供一个通用的 API。
wxWindows 是一个免费产品,根据类似于 L-GPL 的许可证发布。使用它,您可以编写商业和免费产品。
wxWindows 可从 http://www.wxwindows.org/ 获取。教程可从 web.ukonline.co.uk/julian.smart/wxwin/hello.htm 获取。
这个工具包是我的最爱。GraphApp 是一个 C 库,允许您用 C 语言编写简单的图形应用程序。它是一个跨平台工具包,可在 Macintosh OS、Microsoft Windows、UNIX 下的 Motif 和 Athena 上运行。GraphApp 支持的小部件数量有限,但非常容易学习。您可以在不到一个小时的时间内学会如何制作图形应用程序。
GraphApp 的一个优点是它可以编译为小型静态库。这意味着您可以在编译程序时链接库,而不会显着增加二进制文件的大小,并且用户无需安装工具包即可运行它。
GraphApp 工具包可在 http://www.cs.usyd.edu.au/~loki/graphapp/ 获取。GraphApp 教程可在 http://www.cs.usyd.edu.au/~loki/graphapp/tutorial/ 获取。
多年来,Motif 一直是 UNIX 和其他平台上的标准图形工具包。它是一个商业标准,并且具有自己的外观。Motif 是流行的 CDE 桌面环境的基础,也是许多商业 UNIX 系统上的标准。
在 Linux 和其他开放系统上,开发人员制作了一个名为 LessTif 的免费 Motif 克隆。LessTif 在源代码上与 Motif 兼容,并且在 L-GPL 下可用。Motif 和 LessTif 在 UNIX 系统之间提供跨平台兼容性。虽然 Motif 代码在大多数非 UNIX 系统上不起作用,但许多商业 UNIX 系统都附带 Motif 库。此外,Motif 具有经受时间考验的优势。
LessTif 可从 http://www.lesstif.org/ 获取。LessTif 文档可从 www.lesstif.org/Lessdox/lesstif.html 获取。
虽然我没有涵盖所有现有的工具包,但我简要介绍了最流行的工具包。大多数程序员关心两件事:图形外观和可移植性。GTK 和 QT 可能是 Linux 世界中使用最多的,主要是因为 GNOME 和 KDE 桌面环境。用户希望桌面能够提供所有使用相同图形外观的实用程序。我同时使用 GTK 和 GraphApp,但这是一种个人选择,每个程序员都必须自己做出。
GNOME 网页位于 http://www.gnome.org/。KDE 网页位于 http://www.kde.org/。
