Zum Inhalt springen

PyGTK

aus Wikipedia, der freien Enzyklopädie
Dies ist die aktuelle Version dieser Seite, zuletzt bearbeitet am 30. November 2025 um 18:07 Uhr durch imported>Aka (zu großen Zeilenabstand entfernt, deutsch, Kleinkram).
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
PyGTK

colspan="2" class="notheme" style="text-align:center; background:#Vorlage:Standardfarbe; color:#202122;" | GTK-Logo
Basisdaten

Hauptentwickler James Henstridge
Entwickler Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Erscheinungsjahr Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
Aktuelle Version Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value))
Aktuelle Vorabversion Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value))
Betriebssystem Windows, Unix, macOS
Programmier­sprache Python
Kategorie GUI-Toolkit
Lizenz LGPL (Freie Software)
deutschsprachig ja
www.pygtk.org
Datei:PyGObject RadioButtonDemo.png
Screenshot eines mit PyGObject erstellten Python-Programmes mit Radio-Buttons. Der Python Quellcode steht auf Commons

PyGTK ist eine Ansammlung von Wrappern für die Programmiersprache Python zum Zugriff auf das GUI-Toolkit GTK+. PyGTK ist als freie Software unter der LGPL lizenziert. Entwickelt wurde PyGTK von dem Gnome-Programmierer James Henstridge.

Mit dem Übergang zu GTK+ 3.0 und Gnome 3.0 wird PyGTK durch dessen Nachfolger PyGObject ersetzt, welches sich GObject-Introspektion zu Nutze macht, um Anbindungen an Bibliotheken automatisch zu erzeugen. PyGObject ist im Gegensatz zu PyGTK auch mit Python 3 kompatibel.

Python-Wrapper um vergleichbare GUI-Toolkits sind PyQt für die Qt-Bibliothek und wxPython für wxWidgets.

PyGObject Beispielprogramm

<syntaxhighlight lang="python">

  1. ein mit PyGObject erstelltes Python-Programmes, welches GTK benutzt

import gi gi.require_version("Gtk", "3.0") from gi.repository import Gtk

  1. Die Klasse MeinFenster erbt von Gtk.Window

class MeinFenster(Gtk.Window):

   def __init__(self):
       Gtk.Window.__init__(self, title="Hello World App")
       self.set_size_request(300, 100)
       # Einen Button erzeugen und dem Fenster hinzufügen
       button = Gtk.Button(label="Klick hier")
       button.connect("clicked", self.on_button_clicked)
       self.add(button)
   def on_button_clicked(self, widget):
       # Ausgabe auf der Console bei Mauseklick auf den Button
       print("Hello, Wikipedia!")
  1. Initializierung

app = MeinFenster() app.connect("destroy", Gtk.main_quit) # Schließen app.show_all()

  1. Die Hauptschleife der Anwendung wird durch den Aufruf von Gtk.main() gestartet.
  2. Diese Schleife wartet auf Ereignisse (wie Klicks) und aktualisiert die Anwendung entsprechend.

Gtk.main() </syntaxhighlight>

Weblinks

Einzelnachweise

<references />