PyGObject merupakan pengikat untuk mengakses library GObject yang dapat digunakan dalam program Python. Contoh pustaka yang menggunakan GObject yang didukung oleh PyGObject diantaranya GTK, GLib, GIO, Gstreamer dan yang lainnya. PyGObject merupakan pengganti dari pustaka PyGTK yang merupakan proyek lawas dan hanya mendukung GTK 2.
Seperti pustaka GObject, PyGObject dilisensikan dibawah LGPL. Ini memungkinkan PyGObject untuk digunakan di aplikasi sumber terbuka maupun sumber tertutup.
PyGObject telah digunakan dalam banyak aplikasi mulai dari skrip single-purpose kecil sampai aplikasi berfitur lengkap yang besar. PyGObject dapat mengakses pustaka GObject yang menggunakan PyGObject Introspection secara dinamis. Ini menggantikan kebutuhan akan modul terpisah seperti PyGTK, GIO dan python-gnome untuk membangun aplikasi GTK 3 secara lengkap. Setelah fungsionalitas baru ditambahkan ke pustaka GObject, itu langsung tersedia sebagai API Python tanpa perlu perantara lem Python.
Contoh
Kode berikut akan membuat jendela 200x200 pixel dan menyisipkan teks "Halo Dunia!" di dalamnya:
# This program is dedicated to the public domain, you can use it for whatever you want
import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk
class MainWindow(Gtk.Window):
def __init__(self):
Gtk.Window.__init__(self)
self._initUI()
def _initUI(self):
self.set_title("Jendela 1") # Menambahkan judul
self.set_size_request(200, 200) # Mengganti ukuran minimum jendela
self.connect("destroy", Gtk.main_quit) # Matikan program apabila jendela ditutup
self.label = Gtk.Label("Halo Dunia!") # Membuat label
self.add(self.label) # Menambahkan label ke jendela utama
self.show_all() # Perlihatkan jendela
MainWindow()
Gtk.main() # Untuk main loop
Program tersebut dapat dijalankan seperti anda menjalankan skrip Python3 biasa lainnya, selama anda telah memasang GTK dan modul PyGObject.
Pranala luar