Python

Cara Menggunakan Pembuat GUI PyQt

Cara Menggunakan Pembuat GUI PyQt

PyQt adalah pustaka Python populer yang digunakan untuk mengimplementasikan aplikasi grafis di Python dengan lebih mudah. Pustaka ini dilengkapi dengan alat pembuat GUI (Graphical User Interface) yang disebut Desainer Qt. GUI dapat dibangun dengan cepat dengan Python menggunakan fitur drag-and-drop dari perpustakaan ini, meskipun alat ini tidak memiliki fasilitas debugging seperti IDE standar. Tutorial ini menunjukkan cara mengimplementasikan GUI menggunakan kelas Qt Designer dari PyQt.

Prasyarat

Anda harus menginstal alat Qt Designer sebelum mempraktikkan contoh yang diberikan dalam tutorial ini. Jalankan perintah berikut untuk menginstal Desainer Qt di sistem Anda:

$ sudo apt-get install qttools5-dev-tools
$ sudo apt-get install qttools5-dev

Buka Desainer Qt

Jalankan perintah berikut untuk mengubah lokasi direktori saat ini ke Desainer Qt map.

$ cd /usr/lib/x86_64-linux-gnu/qt5/bin/

Jalankan perintah berikut untuk membuka aplikasi Qt Designer.

$ ./perancang

jika Desainer Qt telah diinstal dengan benar, jendela berikut akan muncul:. Itu Widget kotak yang ditampilkan di sisi kiri jendela utama berisi berbagai widget yang dapat Anda gunakan untuk mendesain antarmuka pengguna aplikasi. Itu Bentuk baru jendela digunakan untuk membuat jendela baru menggunakan tombol default. Jendela yang ditampilkan di sisi kanan jendela utama memberikan informasi tentang widget yang dapat dibaca atau dimodifikasi.

Buat Formulir Pertama Menggunakan Qt Designer

Untuk mulai mendesain antarmuka untuk aplikasi Python, kita akan mengklik tombol Membuat tombol di jendela berikut untuk membuka kotak dialog dengan dua tombol default.

Selanjutnya kita akan mendesain form login menggunakan Label, Edit Teks, dan widget Tombol Tekan. Kotak dialog akan disimpan dengan nama Login.ui, yang akan digunakan nanti dalam skrip Python. Itu objek Q nama akan diubah menjadi dialog masuk menggunakan Jendela Editor Properti dari aplikasi ini.

Menggunakan Kotak Dialog Masuk

File antarmuka pengguna yang dibuat oleh Desainer Qt dapat digunakan dalam skrip Python dengan dua cara. File dapat digunakan langsung dalam skrip Python, atau file Python yang dikonversi dari of Desainer Qt file dapat digunakan dalam skrip Python. Kedua cara menggunakan kotak dialog dari Desainer Qt ditunjukkan di bagian berikut dari tutorial.

Jalankan File Desainer Qt Secara Langsung

Modul UIC dari pustaka PyQt digunakan untuk memuat file yang dibuat oleh Qt Designer, dan memuatUI() metode modul UIC digunakan untuk memuat file UI. Skrip berikut menunjukkan cara memuat Desainer Qt file bernama Gabung.ui yang kita buat sebelumnya. Modul yang diperlukan diimpor di awal skrip. Objek aplikasi dibuat menggunakan Aplikasi Q(), dan Desainer Qt file dimuat menggunakan memuatUI() metode. Selanjutnya, eksekutif() metode dipanggil untuk memulai loop acara aplikasi.

# Impor modul sistem
sistem impor
# Impor QtWidgets dan modul uic
dari PyQt5 impor QtWidgets, uic
# Buat objek aplikasi
aplikasi = QtWidget.QAplikasi (sistem.argv)
# Muat formulir dan tampilan GUI
jendela = uic.loadUi("Masuk.ui")
jendela.menunjukkan()
# Mulai loop acara aplikasi atau kotak dialog
aplikasi.eksekutif()

Kotak dialog berikut akan muncul setelah menjalankan skrip di atas:.

Jalankan File UI dengan Mengonversi ke File Python

File UI yang dibuat oleh Qt Designer dapat dikonversi menjadi file Python menggunakan pyuic5 perintah. Jalankan perintah berikut untuk mengonversi Gabung.ui file ke dalam formulir masuk.py mengajukan. Itu Gabung.ui file harus disimpan di lokasi saat ini untuk menjalankan perintah berikut; jika tidak, kesalahan akan dihasilkan.

$ pyuic5 Masuk.ui -o loginForm.py

Kode berikut akan dibuat di: formulir masuk.py file setelah menjalankan perintah di atas.

# -*- koding: utf-8 -*-
# Implementasi formulir yang dihasilkan dari membaca file ui 'Login.ui'
#
# Dibuat oleh: Generator kode UI PyQt5 5.12.3
#
# PERINGATAN! Semua perubahan yang dibuat dalam file ini akan hilang!
dari PyQt5 impor QtCore, QtGui, QtWidgets
kelas Ui_Logindialog(objek):
def setupUi(self, Logindialog):
dialog masuk.setObjectName("Logindialog")
dialog masuk.mengubah ukuran(400, 224)
diri.textEdit = QtWidget.QTextEdit(Logindialog)
diri.teksSunting.setGeometry(QtCore.QRect(130, 70, 221, 31))
diri.teksSunting.setObjectName("textEdit")
diri.textEdit_2 = QtWidgets.QTextEdit(Logindialog)
diri.teksEdit_2.setGeometry(QtCore.QRect(130, 120, 221, 31))
diri.teksEdit_2.setObjectName("textEdit_2")
diri.label = QtWidget.QLabel(Logindialog)
diri.label.setGeometry(QtCore.QRect(140, 20, 131, 31))
font = QtGui.QFont()
fon.setPointSize (18)
diri.label.setFont(font)
diri.label.setObjectName("label")
diri.label_2 = QtWidgets.QLabel(Logindialog)
diri.label_2.setGeometry(QtCore.QRect(36, 70, 81, 20))
diri.label_2.setObjectName("label_2")
diri.label_3 = QtWidget.QLabel(Logindialog)
diri.label_3.setGeometry(QtCore.QRect(40, 120, 67, 17))
diri.label_3.setObjectName("label_3")
diri.btnLogin = QtWidget.QPushButton(Logindialog)
diri.btnLogin.setGeometry(QtCore.QRect(150, 170, 89, 25))
diri.btnLogin.setObjectName("btnLogin")
diri.btnBatal = QtWidget.QPushButton(Logindialog)
diri.btnBatal.setGeometry(QtCore.QRect(250, 170, 89, 25))
diri.btnBatal.setObjectName("btnBatal")
diri.retranslateUi(Logindialog)
QtCore.QMetaObjek.connectSlotsByName(Logindialog)
def retranslateUi(self, Logindialog):
_translate = QtCore.Aplikasi QCore.menterjemahkan
dialog masuk.setWindowTitle(_translate("Logindialog", "Dialog"))
diri.label.setText(_translate("Logindialog", "Formulir Masuk"))
diri.label_2.setText(_translate("Logindialog", "Nama Pengguna"))
diri.label_3.setText(_translate("Logindialog", "Kata Sandi"))
diri.btnLogin.setText(_translate("Logindialog", "Login"))
diri.btnBatal.setText(_translate("Logindialog", "Batal"))

Berikut ini akan menampilkan Gabung kotak dialog dengan mengimpor formulir masuk.py file yang dibuat menggunakan pyuic5 perintah. Objek aplikasi dibuat menggunakan Aplikasi Q(), dan kotak dialog Login dimuat menggunakan setupUi() metode. Tombol Login dilampirkan dengan loginDiklik() metode untuk memeriksa apakah nama pengguna dan kata sandi yang diambil dari pengguna itu valid. Itu Membatalkan tombol dilampirkan ke batalKlik() metode untuk keluar dari aplikasi. Itu eksekutif() metode dipanggil untuk memulai loop acara aplikasi.

# Impor QtWidget
dari PyQt5 impor QtWidgets
# Sistem impor
sistem impor
# Impor formulir login ui
impor formulir masuk
# Tentukan kelas untuk mengatur UI
kelas MyApp (QtWidgets.QMainWindow, form login.Ui_Logindialog):
def __init__(sendiri, induk=Tidak ada):
super(Aplikasi Saya, mandiri).__init__(induk)
# Muat formulir masuk
diri.setupUi(sendiri)
# Panggil metode loginClicked()
diri.btnLogin.diklik.menghubungkan (diri sendiri).loginDiklik)
# Memanggil metode cancelClicked()
diri.btnBatal.diklik.menghubungkan (diri sendiri).batalKlik)
# Nyatakan metode untuk memeriksa nama pengguna dan kata sandi ketika tombol Masuk akan diklik
def loginDiklik(sendiri):
jika diri sendiri.teksSunting.toPlainText() == 'admin' dan self.teksEdit_2.toPlainText() == 'pengguna super':
print('Pengguna Terkonfirmasi')
lain:
print('Pengguna Tidak Diautentikasi')
# Deklarasikan metode untuk menghentikan skrip ketika tombol Batal akan diklik
def cancelClicked(self):
keluar()
# Buat objek aplikasi
aplikasi = QtWidget.QAplikasi (sistem.argv)
# Buat objek kelas
formulir = Aplikasi Saya()
# Menampilkan formulir
untuk m.menunjukkan()
# Mulai loop acara aplikasi atau kotak dialog
aplikasi.eksekutif()

Kotak dialog berikut akan muncul setelah menjalankan skrip di atas:.


Jika pengguna memasukkan nama pengguna atau kata sandi yang salah di Gabung form, maka akan muncul output berikut setelah mengklik tombol Gabung tombol.


Jika pengguna memasukkan nama pengguna dan kata sandi yang benar di Gabung form, maka akan muncul output berikut setelah mengklik Gabung tombol.


Jika pengguna mengklik Membatalkan tombol di Gabung form, maka kotak dialog akan hilang.

Kesimpulan

Tutorial ini menunjukkan cara menginstal how Desainer Qt dan cara mendesain form sederhana menggunakan aplikasi ini. Tutorial ini juga menunjukkan cara memuat kotak dialog UI secara langsung dan setelah mengubahnya menjadi skrip Python telah ditunjukkan di bagian lain dari tutorial ini. Semoga artikel ini membantu Anda untuk lebih memahami penggunaan Qt Designer untuk membangun dan menggunakan GUI dalam aplikasi.

Aplikasi Pemetaan Gamepad Terbaik untuk Linux
Jika Anda suka bermain game di Linux dengan gamepad alih-alih sistem input keyboard dan mouse biasa, ada beberapa aplikasi yang berguna untuk Anda. Ba...
Alat Berguna untuk Gamer Linux
Jika Anda suka bermain game di Linux, kemungkinan besar Anda telah menggunakan aplikasi dan utilitas seperti Wine, Lutris, dan OBS Studio untuk mening...
Game Remaster HD untuk Linux yang Belum Pernah Rilis Linux Sebelumnya
Banyak pengembang dan penerbit game datang dengan remaster HD dari game lama untuk memperpanjang umur waralaba, harap penggemar meminta kompatibilitas...