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/pluginspada 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, atauQComboBoxdari panel kiri ke kanvas kerja. - Atur nama objek (object name) dengan penamaan yang jelas, misalnya
btnRununtuk tombol eksekusi dancmbLayeruntuk pilihan layer, agar mudah dipanggil di skrip Python. - Simpan file tersebut dengan ekstensi
.uidi dalam folder plugin yang telah dibuat oleh Plugin Builder pada langkah pertama, beri nama misalnyanamaplugin_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.