Panduan Membuat Plugin QGIS Menggunakan Qt Designer

Pembuatan plugin QGIS kustom yang interaktif dan memiliki antarmuka grafis (GUI) sangat dipermudah dengan menggunakan aplikasi Qt Designer. Melalui perangkat ini, pengembang dapat merancang tata letak jendela, tombol, kotak teks, dan komponen visual lainnya secara visual (drag-and-drop) tanpa harus menulis kode antarmuka secara manual dari nol, yang kemudian dikompilasi menjadi file antarmuka berbasis XML berformat .ui untuk diintegrasikan ke dalam skrip Python QGIS.

Untuk memulai proses pengembangan plugin QGIS berbasis Qt Designer, Anda memerlukan beberapa perangkat esensial yang harus terpasang di sistem operasi Anda. Berikut adalah tabel komponen utama dan perangkat yang dibutuhkan:

Komponen Fungsi Utama Keterangan Teknis
QGIS Desktop Environment utama eksekusi plugin Disarankan versi LTS (Long Term Support) terbaru
Qt Designer Editor visual GUI (Graphical User Interface) Biasanya terpasang otomatis bersama instalasi PyQt5/PyQt6 atau OSGeo4W
Plugin Builder (QGIS) Alat bantu otomatisasi kerangka direktori plugin Diinstal langsung melalui Plugin Manager resmi QGIS
PYCC / UIC Compiler Mengubah file .ui menjadi file Python (.py) Dijalankan via baris perintah atau otomatis via Makefile/Plugin

Langkah-Langkah Membuat Plugin QGIS dengan Qt Designer

Proses pengembangan dibagi menjadi tiga tahap utama: pembuatan kerangka folder menggunakan Plugin Builder, perancangan antarmuka di Qt Designer, dan penulisan logika program di editor kode Python.

1. Membuat Kerangka Plugin via Plugin Builder

Buka QGIS, pilih menu Plugins > Manage and Install Plugins, lalu cari dan instal Plugin Builder. Setelah terinstal, akses melalui menu Plugins > Plugin Builder > Plugin Builder.

  • Isi informasi dasar seperti Class name, Plugin name, Description, dan Version.
  • Pilih jenis templat template: Tool button with dialog (karena kita akan menggunakan antarmuka dari Qt Designer).
  • Simpan direktori output ke dalam folder profil aktif QGIS (biasanya di AppData/Roaming/QGIS/QGIS3/profiles/default/python/plugins pada Windows).

2. Merancang Antarmuka di Qt Designer

Buka aplikasi Qt Designer yang terpisah. Pilih jenis templat Main Window atau Dialog with Buttons Bottom sesuai kebutuhan jendela plugin Anda.

  • Seret (drag) komponen seperti QPushButton, QLabel, atau QComboBox dari panel kiri ke kanvas kerja.
  • Atur nama objek (object name) dengan penamaan yang jelas, misalnya btnRun untuk tombol eksekusi dan cmbLayer untuk pilihan layer, agar mudah dipanggil di skrip Python.
  • Simpan file tersebut dengan ekstensi .ui di dalam folder plugin yang telah dibuat oleh Plugin Builder pada langkah pertama, beri nama misalnya namaplugin_dialog_base.ui.

3. Menghubungkan File UI dengan Logika Python

File berformat .ui harus diterjemahkan ke dalam bentuk kelas Python agar dapat dibaca oleh QGIS. Anda dapat menggunakan perintah pyuic5 melalui terminal atau Command Prompt jika menggunakan PyQt5:

pyuic5 -x namaplugin_dialog_base.ui -o namaplugin_dialog_base.py

Selanjutnya, buka file utama plugin Anda (biasanya bernama namaplugin.py) menggunakan teks editor atau IDE seperti VS Code atau PyCharm. Hubungkan tombol dan fungsi logika menggunakan sintaks penghubung sinyal (signal and slot) di dalam fungsi inisialisasi:

# Contoh potongan kode koneksi tombol di dalam file utama plugin Python
self.dlg.btnRun.clicked.connect(self.run_process)

def run_process(self):
    # Masukkan logika pemrosesan data spasial QGIS di sini
    pass

Tips Troubleshooting Lapangan

Kendala yang sering ditemui pengembang pemula adalah perubahan pada file .ui tidak muncul di QGIS setelah disimpan. Pastikan Anda selalu melakukan kompilasi ulang file .ui menjadi .py setiap kali selesai melakukan perubahan desain di Qt Designer, atau gunakan modul uic bawaan Python di QGIS yang otomatis memuat file .ui saat plugin dimuat ulang menggunakan plugin tambahan seperti Plugin Reload.