Dzięki takiemu odseparowaniu GTK od systemu graficznego (w przypadku Uniksa jest to przeważnie X Window System) biblioteką bezpośrednio odpowiedzialną za interakcję z systemem graficznym, możliwe było łatwe przeportowanie GTK na inne niż uniksowe architektury (np.: Microsoft Windows oraz linuksowy ).

Historia Biblioteka GTK pierwotnie stworzona została na potrzeby programu GIMP, stąd też nazwa, pochodząca od . Znak + pojawił się w nazwie, gdy autorzy dodali do oryginalnego GTK możliwość programowania obiektowego.

Zmiany w wersji GTK 2.0 GTK przeszło duże zmiany w wersji 2.0. Do nich należą: pełna obsługa kodowania UTF-8, obsługa wygładzania czcionek i , zaawansowany system wyświetlania i manipulacji tekstem (Pango), obsługa wielu języków jednocześnie, metody wprowadzania niezależne od , system wspomagania dla osób niepełnosprawnych (ATK).

Przykłady Przykładowy kod w języku C wyświetlający puste okienko:

#include <gtk/gtk.h>

int main(int argc, char* argv[]) { GtkWidget* window;

gtk_init(&argc, &argv);

window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_title(GTK_WINDOW(window), "GTK"); gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);

gtk_widget_show(window);

g_signal_connect(G_OBJECT(window), "destroy", G_CALLBACK(gtk_main_quit), NULL);

gtk_main();

return 0; }