VOOZH about

URL: https://pl.wikipedia.org/wiki/GTK

⇱ GTK – Wikipedia, wolna encyklopedia


Przejdź do zawartości
Z Wikipedii, wolnej encyklopedii
GTK
👁 Logo GTK

Logo programu
👁 ilustracja
Pierwsze wydanie 1.0.0 – 14 kwietnia 1998; około 28 lat temu
Aktualna wersja stabilna 4.22.2
(1 kwietnia 2026) [±]
System operacyjny BSD, Linux, macOS, Solaris, Windows i inne
Rodzaj Biblioteka programistyczna
Licencja GNU LGPL
👁 Image
Książki w Wikibooks
Strona internetowa

GTK, wcześniej: The GIMP Toolkit[1], GTK+[2]biblioteka służąca do tworzenia interfejsu graficznego do programów komputerowych[3].

GTK została napisana w C, aczkolwiek jest zaprojektowana obiektowo, w oparciu o implementację obiektowości dla C – GObject. Z biblioteki GTK można korzystać przy pomocy większości języków programowania. Dla C++ istnieje biblioteka gtkmm będąca nakładką na GTK wprowadzającą wygodniejszą składnię w stylu C++ (m.in. wykorzystanie tzw. pól i metod na obiektach GTK), jak i również biblioteka Gtk# będąca nakładką umożliwiającą wykorzystanie GTK na platformie .NET. Dla języka Ada została stworzona biblioteka GtkADA, umożliwiająca pełny dostęp do funkcjonalności GTK. PyGTK to biblioteka stworzona do obsługi języka Python[4]. W bibliotece tej napisanych jest wiele programów dla środowiska GNOME[potrzebny przypis].

Biblioteka ta jest podstawą dla środowisk graficznych GNOME i Xfce. Na platformie uniksowej sama wykorzystuje bibliotekę GDK (odpowiedzialną za rysowanie obiektów) oraz GLib, zawierającą specjalne typy danych. 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 DirectFB(inne języki)).

Historia

[edytuj | edytuj kod]

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

Zmiany w wersji GTK 2.0

[edytuj | edytuj kod]

GTK przeszło duże zmiany w wersji 2.0. Do nich należą:

Przykłady

[edytuj | edytuj kod]

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

#include<gtk/gtk.h>

intmain(intargc,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();

return0;
}

Przykładowy kod w języku Python ładujący okienko z pliku w formacie GtkBuilder (zob. Glade):

#!/usr/bin/env python
importgtk

if __name__ == '__main__':
 builder = gtk.Builder()
 builder.add_from_file('window.glade')
 builder.connect_signals(globals())
 window = builder.get_object('window')
 window.connect('destroy', gtk.main_quit)
 window.show()
 gtk.main()

Zobacz też

[edytuj | edytuj kod]

Przypisy

[edytuj | edytuj kod]
  1. GIMP Toolkit – openSUSE Wiki [online], tr.opensuse.org [dostęp 2023-12-13].
  2. Project rename to „GTK” [online], mail.gnome.org [dostęp 2024-01-21].
  3. GTK – The GTK toolkit [online], 22 grudnia 2023 [dostęp 2023-12-22] (ang.).
  4. GTK+ Language Bindings. [dostęp 2014-07-19]. [zarchiwizowane z tego adresu (2011-07-13)]. (ang.).
  5. What is the + in GTK+?. [dostęp 2014-07-19]. (ang.).

Linki zewnętrzne

[edytuj | edytuj kod]
Biblioteki graficzne
Niskopoziomowe
Wysokopoziomowe
Na AmigaOS
Na macOS
Na Windows
Na Unix,
bez X11
Wieloplatformowe,
według języka
CLI
C
Objective-C
C++
Flash
Java
Desktop
Web
JavaScript
Common Lisp
Pascal
Object Pascal
Perl
PHP
Python
Ruby
XML