PyGObject
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:<syntaxhighlight lang="python3">
- 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 </syntaxhighlight>Program tersebut dapat dijalankan seperti anda menjalankan skrip Python3 biasa lainnya, selama anda telah memasang GTK dan modul PyGObject.
Lihat pula
Pranala luar
Sumber dan atribusi
Konten artikel ini diadaptasi dari Wikipedia bahasa Indonesia, revisi 28026450 (2025-10-16T16:40:23Z), yang tersedia berdasarkan lisensi Creative Commons Atribusi-BerbagiSerupa (CC BY-SA). Mohon gunakan konten ini secara bijak serta sesuai dengan ketentuan lisensi yang berlaku.