Membuat Antarmuka Pengguna dengan Komponen Qt
Dalam bab ini, kita akan belajar menggunakan widget berikut:
Menampilkan pesan selamat datang
Menggunakan widget Tombol Radio
Pengelompokan tombol radio
Menampilkan opsi dalam bentuk kotak centang
Menampilkan dua grup kotak centang
Pengantar
Anda akan belajar membuat aplikasi GUI menggunakan toolkit Qt. Toolkit Qt, yang dikenal sebagai Qt, adalah aplikasi lintas platform dan kerangka kerja UI yang dikembangkan oleh Trolltech, yang digunakan untuk mengembangkan aplikasi GUI. Ini berjalan pada beberapa platform, termasuk Windows, macOS X, Linux, dan platform UNIX lainnya. Ini juga disebut sebagai widget toolkit karena menyediakan widget seperti tombol, label, kotak teks, tombol push, dan kotak daftar, yang diperlukan untuk merancang GUI. Ini mencakup kumpulan kelas lintas platform, alat pengembangan terintegrasi, dan IDE lintas platform. Untuk membuat aplikasi waktu nyata, kita akan menggunakan binding Python untuk toolkit Qt yang disebut, PyQt5.
PyQt
PyQt adalah seperangkat binding Python untuk kerangka kerja aplikasi lintas-platform yang menggabungkan semua keunggulan Qt dan Python. Dengan PyQt, Anda dapat memasukkan pustaka Qt dalam kode Python, memungkinkan Anda untuk menulis aplikasi GUI dengan Python. Dengan kata lain, PyQt memungkinkan Anda untuk mengakses semua fasilitas yang disediakan oleh Qt melalui kode Python. Karena PyQt bergantung pada pustaka Qt untuk dijalankan, ketika Anda menginstal PyQt, versi Qt yang diperlukan juga diinstal secara otomatis pada mesin Anda.
Aplikasi GUI dapat terdiri dari jendela utama dengan beberapa dialog atau hanya satu dialog. Aplikasi GUI kecil biasanya terdiri dari setidaknya satu dialog. Aplikasi dialog berisi tombol. Itu tidak mengandung bilah menu, bilah alat, bilah status, atau widget pusat, sedangkan aplikasi jendela utama biasanya memiliki semua itu.
Dialog terdiri dari dua jenis berikut:
Modal: Dialog ini adalah dialog yang memblokir pengguna dari berinteraksi dengan bagian lain dari aplikasi. Dialog adalah satu-satunya bagian dari aplikasi yang dapat berinteraksi dengan pengguna. Sampai dialog ditutup, tidak ada bagian lain dari aplikasi yang dapat diakses.
Modeless: Dialog ini adalah kebalikan dari dialog modal. Ketika dialog modeless aktif, pengguna bebas untuk berinteraksi dengan dialog dan dengan seluruh aplikasi.
Cara membuat aplikasi GUI
Ada dua cara berikut untuk menulis aplikasi GUI:
Dari awal, menggunakan editor teks sederhana
Dengan Qt Designer, alat desain visual yang dengannya Anda dapat membuat antarmuka pengguna dengan cepat menggunakan drag and drop Anda akan menggunakan Qt Designer untuk mengembangkan aplikasi GUI di PyQt, karena ini adalah cara cepat dan mudah untuk mendesain antarmuka pengguna tanpa menulis satu baris kode pun. Jadi, luncurkan Qt Designer dengan mengklik dua kali ikonnya di desktop.
Pada pembukaan, Qt Designer meminta Anda untuk memilih templat untuk aplikasi baru Anda, seperti yang ditunjukkan pada tangkapan layar berikut:
Qt Designer menyediakan sejumlah templat yang sesuai untuk berbagai jenis aplikasi. Anda dapat memilih salah satu templat ini dan kemudian klik tombol Buat.
Qt Designer menyediakan templat yang telah ditentukan sebelumnya untuk aplikasi baru:
Dialog dengan Tombol Bawah: Templat ini membuat formulir dengan tombol OK dan Batalkan di sudut kanan bawah.
Dialog dengan Tombol Kanan: Templat ini membuat formulir dengan tombol OK dan Batalkan di sudut kanan atas.
Dialog tanpa Tombol: Templat ini membuat formulir kosong tempat Anda dapat menempatkan widget. Superclass untuk dialog adalah QDialog.
Jendela Utama: Templat ini menyediakan jendela aplikasi utama dengan bilah menu dan bilah alat yang dapat dihapus jika tidak diperlukan.
Widget: Templat ini membuat formulir yang superclass-nya QWidget daripada QDialog
Setiap aplikasi GUI memiliki widget tingkat atas dan widget lainnya disebut anak-anaknya. Widget tingkat atas dapat berupa QDialog, QWidget, atau QMainWindow, tergantung pada templat yang Anda butuhkan. Jika Anda ingin membuat aplikasi berdasarkan templat dialog, maka widget tingkat atas atau kelas pertama yang Anda warisi adalah QDialog. Demikian pula, untuk membuat aplikasi berdasarkan templat Jendela Utama, widget tingkat atas adalah QMainWindow, dan untuk membuat aplikasi berdasarkan templat Widget, Anda harus mewarisi kelas QWidget. Seperti yang disebutkan sebelumnya, sisa widget yang digunakan untuk antarmuka pengguna disebut widget anak kelas.
Qt Designer menampilkan bilah menu dan bilah alat di bagian atas. Ini menunjukkan kotak Widget di sebelah kiri yang berisi berbagai widget yang digunakan untuk mengembangkan aplikasi, dikelompokkan dalam beberapa bagian. Yang harus Anda lakukan adalah menarik dan melepas widget yang Anda inginkan dari formulir. Anda dapat mengatur widget dalam tata letak, mengatur tampilan, menyediakan atribut awal, dan menghubungkan sinyal mereka ke slot.