GTK+

最初是GIMP的专用开发库（），后来发展为Unix-like系统下开发图形界面的应用程序的主流开发工具之一。GTK+是自由软件，并且是GNU计划的一部分。

GTK+使用C语言开发，但是其设计者使用面向对象技术。也提供了C++（gtkmm）、Perl、Ruby、Java和Python（PyGTK）绑定，其他的绑定有Ada、D、Haskell、PHP和所有的.NET编程语言。

与其他很多部件工具箱不同，GTK+并不基于Xt。这一决策优劣互见：优点是GTK+可以应用于其他系统，其灵活性也很强；而缺点就是它无法利用以传统方法为X11定制的X资源数据库。GTK+最早应用于X Window System，如今已移植至其他平台，诸如Microsoft Windows、DirectFB，以及Quartz在Mac OS X.

Glade是一个界面设计工具，但是它也包含了一种描述GUI界面的XML语言，它和libglade一起工作就可以直接使用GTK和GNOME控件；新的Glade-3不再直接支持生成编程语言源代码。

提供不同的显示引擎使得最终用户可以定制外观和视觉。目前已经有一些可以模仿其他流行的平台或者工具箱（例如Windows 95、Motif、Qt或者NEXTSTEP）的引擎。



这只是一部分，另外，GTK+也可以运行在KDE的环境下。而且GTK+也可以在Microsoft Windows运行，另外还有DirectFB和ncurses。


以下程序都是使用GTK+开发、属于开源软件，可以运行于Linux/Unix，Windows，Mac等多种操作系统平台上。

最初GTK+包括一些和图形无关的常规功能，如链表和二叉树等数据结构。这些基本功能和对象系统GObject已经合并到独立的库Glib，它被程序员专门用于开发不需要图形界面的代码。

2002年3月11日，GTK+2.0版正式发布。GTK+ 2是GTK+后继版本，其新特性包括使用Pango改进的文本渲染、新主题引擎、使用ATK改进的可达性、完全转换到使用UTF-8的Unicode和更灵活的API。但是它和GTK+ 1不完全兼容，因此必须由程序员做移植工作。由于GTK+ 1更快、相对更简单或更加适合嵌入式应用，所以还被继续使用。

从GTK+ 2的2.8版起，它依靠程式库Cairo完成渲染，而这引入了矢量图形的支持。

Ridley项目正在尝试统一一系列和GTK+相关的库，包括libgnome、libgnomeui、libgnomeprint、libgnomeprintui、libglade、libgnomecanvas、libegg、libeel和gtkglext。

GTK+ hello world以C撰写，本程序含有窗口，标题是"Hello, World".

由于GTK主要是作为Unix-like系统底下的介面，在Windows使用该系统所开发的软体时就需要用到GTK+执行环境，即GTK+ Runtime Environment for Windows。这个软体与GTK+不同的地方在于它仅仅是为了执行软体用途而制作，以解决Windows没有内建GTK+函式库的问题。