Aplikasi dengan antarmuka grafis (GUI) lebih disukai pengguna, karena mudah dioperasikan.

Pada kesempatan ini, kita akan belajar membuat aplikasi berbasis GUI dengan bahasa pemrograman python dan pustaka PyGTK.

Apa itu GTK+ dan PyGTK?

GTK+ (GIMP Toolkit) merupakan pustaka yang digunakan untuk membangun antarmuka grafis. GTK+ adalah bagian dari proyek GNU.

GTK+ sendiri merupakan pustaka yang digunakan untuk bahasa C, sedangkan untuk python kita menggunakan PyGTK.

PyGTK adalah pustaka GTK+ yang sudah diracik khusus untuk Python.

Website Resmi PyGTK

Informasi lebih lengkap mengenai PyGTK, dapat dibaca pada website resminya www.pygtk.org.

Persiapan Pemrograman PyGTK

Apa saja alat-alat yang diperlukan untuk pemrograman PyGTK?

1. Teks Editor

Teks editor digunakan untuk menulis kode. Gunakan teks editor yang anda sukai. Beberapa teks editor rekomendasi: Atom, Ms. Visual Studio Code, Komodo Edit, Geany, dsb.

Teks editor atom

2. Python

Sebagian besar distro Linux sudah membawa python pada distribusinya, jadi tidak perlu diinstal.

Silahkan cek versi yang terinstal di terminal dengan perintah:

$ python --version
Python 2.7.6

3. PIP

PIP merupakan sebuah sistem manajemen paket yang digunakan untuk menginstal dan mengelola pustaka python.

Kita membutuhkan PIP untuk menginstal pustaka PyGTK.

Cara instal PIP:

sudo apt-get isntall python-pip

4. Instal Pustaka PyGTK

Sekarang baru kita bisa install pustaka PyGTK-nya. Gunakan perintah berikut untuk meingstal:

sudo pip install PyGTK

Contoh Program: Membauat Jendela

Setelah semua perealatan siap, mari kita coba membuat sebuah jendela.

Jendela merupakan bagian utama dari aplikasi GUI.

Silahkan ikuti kode berikut:

#impor pustaka GTK
import gtk

# membuat objek jendela
jendela = gtk.Window()

# konfigurasi jendela
jendela.set_size_request(600,200)
jendela.set_position(gtk.WIN_POS_CENTER)
jendela.set_title("Pemrograman PyGTK - Petani Kode")
jendela.connect("destroy", gtk.main_quit)

# tampilkan jendela
jendela.show()
gtk.main()

Setelah itu, simpan dengan nama jendela.py dan eksekusi skript tersebut.

Jendela dengan PyGTK

Jika berhasil muncul seperti gambar di atas, berarti program PyGTK pertama kita berhasil… 😄

Penjelasan Method

Class gtk.Window() memiliki beberapa method untuk mengatur konfigurasi jendela, berikut ini penjelasannnya:

  • .set_size_request(600,200) untuk menentukan ukuran jendela.
  • .set_position(gtk.WIN_POS_CENTER) untuk menentukan posisi muncul jendela. gtk.WIN_POS_CENTER artinya posisi munculnya di tengah-tengah layar.
  • .set_title() untuk memberikan judul jendela.
  • .connect("destroy", gtk.main_quit) untuk menghubungkan sinyal "destroy" dengan fungsi main_quit. Artinya, ketika tombol close diklik… aplikasi akan langsung keluar.
  • .show() untuk menampilkan jendela.

Selain method dari class Window() ada satu hal lagi yang perlu diperhatikan yaitu fungsi gtk.main().

gtk.main() adalah main loop (perulangan utama) yang menjaga jendela tetap terbuka.

Membuat Jendela dengan Class

Pada contoh di atas kita membuat jendela dengan membuat langsung objek dari class gtk.Window().

Sekarang kita coba membuat jendela dengan membuat class turunan dari gtk.Window().

import gtk

class Aplikasi(gtk.Window):
    def __init__(self):
        super(Aplikasi, self).__init__()

        self.connect("destroy", gtk.main_quit)
        self.set_size_request(250, 150)
        self.set_position(gtk.WIN_POS_CENTER)
        self.show()

# Tampilkan Jendela
Aplikasi()
gtk.main()

Pertama kita membuat class bernama Aplikasi() yang merupakan turunan dari class gtk.Window().

Kemudian kita lakukan konfigurasi jendela pada konstruktor class Aplikasi().

Lalu… pada akhirnya kita bisa langsung menampilkan jendela dengan memanggil class-nya atau bisa juga dengan cara membuat objek dari class Aplikasi().

app = Aplikasi()
gtk.main()

Hasilnya:

Jendela GTK+ dengan Class Turunan

Cara manakah yang kamu suka?

Kalau saya lebih suka yang menggunakan class, karena lebih sederhana dan mudah dikelola.

Menambahkan Ikon

Untuk menambahkan ikon, kita menggunakan method:

.set_icon_from_file("path/ikon.png")

Jangan lupa juga untuk menambahkan file ikonnya petanikode.png. Letakkan file tersebut satu direktori dengan skrip python-nya.

import gtk

class Aplikasi(gtk.Window):
    def __init__(self):
        super(Aplikasi, self).__init__()

        self.connect("destroy", gtk.main_quit)
        self.set_size_request(250, 150)
        self.set_position(gtk.WIN_POS_CENTER)
        self.set_title("Jendela dengan Ikon")
        self.set_icon_from_file("petanikode.png")
        self.show()

Aplikasi()
gtk.main()

Hasilnya:

Jendela dengan Ikon

Apa Selanjutnya?

Kita sudah tahu cara membuat jendela dengan PyGTK, selanjutnya kita akan coba membuat tombol dan label di dalamnya.

Sekian tutorial PyGTK pertama ini…

Kalau ada yang ditanyakan, silahakan sampaikan melalui komentar.