Python

Cara Menggunakan PyQt QComboBox

Cara Menggunakan PyQt QComboBox

SEBUAH Kotak kombo digunakan untuk memilih satu item dari daftar item, seperti tombol radio. Itu QComboBox class dari PyQt digunakan untuk membuat daftar drop-down menggunakan skrip Python. Ini menampilkan daftar item untuk dipilih pengguna. Item ComboBox dapat ditambahkan, diubah, dan dihapus menggunakan skrip. Beberapa item dapat dipilih seperti tombol CheckBox dari daftar item dari ComboBox kemudian disebut ListBox. Tutorial ini menunjukkan cara menggunakan QComboBox untuk membuat daftar drop-down dengan Python.

Metode QComboBox

Kelas QComboBox berisi banyak metode untuk melakukan berbagai tugas yang terkait dengan ComboBox. Beberapa metode yang lebih umum digunakan dari kelas ini dijelaskan di bawah ini:

Nama Metode Tujuan
menghitung() Digunakan untuk menghitung jumlah total item dalam daftar.
Tambahkan Barang() Digunakan untuk menambahkan satu item baru ke daftar.
tambahkanItem() Digunakan untuk menambahkan beberapa item ke daftar.
itemTeks() Digunakan untuk membaca teks item tertentu berdasarkan indeks.
setItemTeks() Digunakan untuk mengatur teks item tertentu berdasarkan indeks.
teks saat ini() Digunakan untuk membaca teks dari item yang dipilih.
indeks saat ini() Digunakan untuk membaca indeks item yang dipilih.
bersih() Digunakan untuk menghapus semua item dari daftar.
disorot() Digunakan saat item dalam daftar disorot.
diaktifkan() Digunakan saat item dipilih oleh pengguna.
indeks saat iniBerubah() Digunakan ketika item dalam daftar telah berubah.

Penggunaan ComboBox

Bagian berikut memberikan contoh yang menjelaskan beberapa penggunaan yang berbeda dari ComboBox menggunakan modul QComboBox dari pustaka PyQt.

Contoh 1: Buat Daftar Drop-Down Sederhana

Contoh ini menunjukkan cara membuat daftar drop-down sederhana menggunakan kelas QComboBox. Di sini, daftar drop-down dari lima elemen dibuat dan dilampirkan ke fungsi kustom yang akan mencetak nilai yang dipilih dari daftar. Satu label digunakan dalam fungsi daftar drop-down untuk menampilkan teks statis, dan label lain digunakan di bawah daftar drop-down untuk menampilkan nilai yang dipilih.

# Impor modul yang diperlukan
sistem impor
dari PyQt5.Impor QtWidgets (QApplication, QWidget, QLabel, QVBoxLayout, QComboBox)
# Deklarasikan kelas untuk membuat ComboBox
kelas ComboContoh (QWidget):
def __init__(sendiri):
super().__init__()
# Atur label sebelum ComboBox
diri.topLabel = QLabel('Pilih bahasa pemrograman favorit Anda:', self)
# Tentukan kotak kombo dengan item
kotak kombo = QComboBox(sendiri)
kotak kombo.tambahkanItem('PHP')
kotak kombo.addItem('Python')
kotak kombo.addItem('Perl')
kotak kombo.addItem('Bash')
kotak kombo.addItem('Jawa')
# Atur label setelah ComboBox
diri.bottomLabel = QLabel(", sendiri)
diri.bawahLabel.sesuaikan Ukuran()
# Tentukan kotak tata letak vartical
v_layout = QVBoxLayout()
v_layout.tambahkan Widget (diri sendiri).label atas)
v_layout.tambahkan Widget (kotak kombo)
v_layout.tambahkan Widget (diri sendiri).bawahLabel)
# Panggil metode khusus jika ada item yang dipilih
kotak kombo.diaktifkan[str].menghubungkan (diri sendiri).pada Dipilih)
# Atur konfigurasi untuk jendela
diri.setContentsMargins(20, 20, 20, 20)
diri.setLayout(v_layout)
diri.pindah (800, 300)
diri.setWindowTitle('Penggunaan ComboBox')
# Fungsi khusus untuk membaca nilai item yang dipilih
def onSelected(self, txtVal):
txtVal = "\nAnda telah memilih: " + txtVal
diri.bawahLabel.setTeks(txtVal)
# Buat objek aplikasi dan jalankan aplikasi
aplikasi = QAplikasi(sys.argv)
kotak kombo = Contoh Kombo()
kotak kombo.menunjukkan()
aplikasi.eksekutif()

Jika pengguna mengklik daftar drop-down setelah menjalankan skrip, daftar berikut akan muncul:.

Jika pengguna memilih nilai Pesta dari daftar drop-down, nilai label kedua akan diubah menjadi 'Anda telah memilih: Bash.'

Contoh 2: Buat ComboBox Menggunakan Daftar

Pada contoh sebelumnya, daftar drop-down dibuat dengan data statis menggunakan metode addItem() dari kelas QComboBox. Contoh ini menunjukkan cara menambahkan beberapa item dalam daftar drop-down dengan mendefinisikan daftar Python. Pertama, kita akan menambahkan teks statis ke item pertama dari daftar drop-down menggunakan metode addItem(). Selanjutnya, kita akan mendefinisikan daftar lima elemen dalam skrip, dan kita akan menambahkan elemen-elemen ini ke daftar drop-down menggunakan metode addItems(). Fungsi khusus dilampirkan ke daftar drop-down untuk menampilkan pesan di label berdasarkan pilihan pengguna.

# Impor modul yang diperlukan
sistem impor
dari PyQt5.Impor QtWidget *
# Deklarasikan kelas untuk membuat kotak kombo dengan menggunakan data daftar
kelas ComboContoh(QMainWindow):
def __init__(sendiri):
super().__init__()
# Atur judul jendela
diri.setWindowTitle("Kotak kombo dengan data Daftar")
# Atur geometri untuk jendela
diri.setGeometry(100, 100, 350, 150)
# Buat kotak kombo
diri.kotak kombo = QComboBox(sendiri)
# Atur geometri untuk kotak kombo
diri.kotak kombo.setGeometri(30, 30, 200, 30)
# Tentukan item daftar untuk kotak kombo
src_engines = ["google.com", "yahoo.com", "tanyakan.com", "baidu.com", "yandex.com"]
# Aktifkan opsi kotak kombo yang dapat diedit
diri.kotak kombo.setEditable(Benar)
# Atur item pertama untuk kotak kombo
diri.kotak kombo.addItem("Pilih Mesin Pencari")
# Tambahkan beberapa item di kotak kombo menggunakan daftar
diri.kotak kombo.addItems(src_engines)
# Tentukan label di bagian bawah kotak kombo untuk memberikan pesan kepada pengguna
diri.msgLabel = QLabel(", sendiri)
# Atur geometri untuk label
diri.msgLabel.setGeometry(30, 60, 290, 60)
# Panggil fungsi khusus saat item apa pun dipilih
diri.kotak kombo.diaktifkan[str].menghubungkan (diri sendiri).diklik)
# Pindahkan posisi jendela
diri.pindah (800, 400)
# Tampilkan Jendela
diri.menunjukkan()
# Tentukan metode untuk menangani acara klik dari Combobox
def onClicked(self, val):
# Periksa item apa saja yang dipilih oleh pengguna atau tidak
if val == "Pilih Mesin Pencari":
pesan = "Anda tidak memilih apa-apa."
lain:
message = "Mesin pencari favorit Anda adalah " + val
# Tampilkan teks pesan di label
diri.msgLabel.setTeks(pesan)
# Tampilkan pesan di konsol
cetak (pesan)
# Buat objek aplikasi
aplikasi = QAplikasi(sys.argv)
# Buat objek dari objek kelas
kombo = Contoh Kombo()
# Jalankan aplikasi
aplikasi.eksekutif()

Jika pengguna mengklik daftar drop-down setelah menjalankan skrip, maka daftar berikut akan muncul:.

Jika pengguna memilih item apa pun kecuali item pertama dalam daftar drop-down, maka nilai yang dipilih akan ditampilkan di label dengan menggabungkan dengan teks lainnya.

Jika pengguna memilih item pertama dalam daftar drop-down, maka nilainya, 'Anda tidak memilih apa pun' akan ditampilkan di label.

Kesimpulan

Artikel ini menunjukkan kepada Anda cara membuat dan menggunakan daftar drop-down dengan Python menggunakan QComboBox kelas menggunakan contoh sederhana untuk membantu Anda lebih memahami penggunaan kelas ini.

Instal Dolphin Emulator terbaru untuk Gamecube & Wii di Linux
Dolphin Emulator memungkinkan Anda memainkan game Gamecube & Wii pilihan Anda di Komputer Pribadi (PC) Linux. Menjadi emulator game sumber terbuka da...
Cara Menggunakan Cheat Engine GameConqueror di Linux
Artikel ini mencakup panduan tentang menggunakan mesin cheat GameConqueror di Linux. Banyak pengguna yang bermain game di Windows sering menggunakan a...
Emulator Konsol Game Terbaik untuk Linux
Artikel ini akan mencantumkan perangkat lunak emulasi konsol game populer yang tersedia untuk Linux. Emulasi adalah lapisan kompatibilitas perangkat l...