Python

Cara Menggunakan PyQt QPushButton

Cara Menggunakan PyQt QPushButton
Butang digunakan dalam aplikasi GUI untuk melakukan pelbagai operasi berdasarkan peristiwa yang dihasilkan oleh pengguna. The QPushButton kelas PyQt digunakan di Python untuk membuat butang yang diperlukan oleh aplikasi. Kelas ini mewarisi fungsi teras Butang QAbstrak kelas. Teks atau ikon boleh digunakan untuk keterangan butang. Butang boleh diaktifkan menggunakan tetikus dan papan kekunci. Sebarang acara butang, termasuk butang yang diklik atau diklik dua kali, dapat dikaitkan dengan fungsi atau metode untuk menangani acara tersebut. Tutorial ini menunjukkan kepada anda cara membuat pelbagai jenis butang menggunakan QPushButton kelas PyQt di Python.

Kaedah QPushButton

The QPushButton kelas mempunyai banyak kaedah untuk melakukan pelbagai tugas yang berkaitan dengan butang. Beberapa kaedah yang lebih biasa digunakan di kelas ini disebutkan di bawah:

Nama Kaedah Tujuan
teks () Digunakan untuk membaca kapsyen butang.
setTeks () Digunakan untuk menetapkan teks dalam kapsyen butang.
setIcon () Digunakan untuk menetapkan ikon dalam kapsyen butang.
setDefault () Digunakan untuk menetapkan butang lalai.
setEnabled () Digunakan untuk mengaktifkan atau mematikan butang. Nilai sebanyak Betul digunakan untuk mengaktifkan butang, dan nilai Salah digunakan untuk mematikan butang.
setCheckable () Digunakan untuk mengenal pasti sama ada butang ditekan atau dilepaskan.
diperiksa () Digunakan untuk membaca keadaan butang yang merupakan nilai boolean.
togol () Digunakan untuk bertukar antara negeri. Sekiranya nilai semasa keadaan butang adalah Betul, maka nilainya akan berubah menjadi Salah, dan begitu juga sebaliknya.

Penggunaan QPushButton

Bahagian berikut memberikan beberapa contoh mudah untuk menjelaskan penggunaan QPushButton.

Contoh 1: Buat Butang Tekan Mudah

Skrip berikut digunakan untuk membuat satu butang di tetingkap. Skrip akan melampirkan fungsi khusus dengan peristiwa yang diklik pada butang untuk memeriksa apakah butang telah diklik. Tingkap akan memaparkan butang setelah pelaksanaan kod. Sekiranya pengguna mengklik butang, teksnya 'Butang ditekan' akan dipaparkan di label.

# Import modul yang diperlukan
import sys
dari PyQt5.QtWidgets mengimport QApplication, QWidget, QPushButton, QLabel
# Tentukan kelas untuk membuat satu butang tekan
Butang kelasContoh (QWidget):
def __init __ (diri):
# Panggil pembina ibu bapa
super ().__di dalamnya__()
# Buat butang
diri.btn = QPushButton ('Klik Saya', diri)
# Tetapkan teks petua alat untuk butang
diri.btn.setToolTip ('Ini adalah butang mudah')
# Tetapkan geometri butang
diri.btn.setGeometry (100, 20, 100, 30)
# Fungsi panggilan apabila butang diklik
diri.btn.diklik.menyambung (diri.diKlik)
# Tentukan label di bahagian bawah butang
diri.msgLabel = QLabel (", diri)
# Tetapkan geometri label
diri.label msg.setGeometri (90, 60, 290, 60)
# Tetapkan tajuk tetingkap
diri.setWindowTitle ('Penggunaan PushButton')
# Tetapkan geometri tetingkap utama
diri.setGeometry (10, 10, 300, 150)
# Tetapkan kedudukan tetingkap utama di skrin
diri.bergerak (850, 300)
# Paparkan tingkap
diri.tunjuk ()
# Tentukan fungsi untuk menangani peristiwa klik pada butang
def onClicked (diri):
# Tetapkan teks untuk label
diri.label msg.setText ('Butang ditekan.')
# Buat objek aplikasi dan jalankan aplikasi
app = QApplication (sys.berhujah)
butang = ButangContoh ()
aplikasi.exec ()

Tetingkap berikut akan muncul setelah melaksanakan skrip.

Sekiranya pengguna mengklik Icklick Me butang, maka teks berikut akan muncul dalam kapsyen di bawah butang.

Contoh 2: Buat Beberapa Butang Tekan

Skrip berikut akan membuat banyak butang tekan menggunakan QPushButton kelas. Dua butang dibuat dalam skrip. Acara yang diklik dari 'Yabutang dilampirkan pada kaedah yang dinamakan btn1_onKlik (), dan peristiwa yang diklik dari 'Tidakbutang dilampirkan pada kaedah yang dinamakan btn2_onKlik (). Kapsyen yang dibuat di bawah butang akan memaparkan pesan yang ditentukan berdasarkan butang yang diklik oleh pengguna. The setGeometri () fungsi digunakan untuk setiap label dan butang untuk mengatur kedudukan objek di tingkap.

import sys
dari PyQt5.QtWidgets mengimport QApplication, QWidget, QPushButton, QLabel
MultiButtons kelas (QWidget):
def __init __ (diri):
# Panggil pembina ibu bapa
super ().__di dalamnya__()
# Tentukan label di bahagian atas butang
diri.topLabel = QLabel ('

Adakah anda suka ular sawa?

', diri)
# Tetapkan geometri label
diri.label atas.setGeometri (100, 20, 290, 50)
# Buat butang pertama
diri.btn1 = QPushButton ('Ya', diri)
# Tetapkan geometri butang
diri.btn1.setGeometri (130, 70, 60, 40)
# Fungsi panggilan apabila butang diklik
diri.btn1.diklik.menyambung (diri.btn1_onKlik)
# Buat butang kedua
diri.btn2 = QPushButton ('Tidak', diri)
# Tetapkan geometri butang
diri.btn2.setGeometri (200, 70, 60, 40)
# Fungsi panggilan apabila butang diklik
diri.btn2.diklik.menyambung (diri.btn2_onKlik)
# Tentukan label di bahagian bawah butang
diri.msgLabel = QLabel (", diri)
# Tetapkan geometri label
diri.label msg.setGeometri (130, 120, 300, 80)
# Tetapkan tajuk tetingkap
diri.setWindowTitle ('Penggunaan pelbagai PushButtons')
# Tetapkan geometri tetingkap utama
diri.setGeometry (10, 10, 400, 200)
# Tetapkan kedudukan tetingkap utama di skrin
diri.bergerak (850, 300)
# Paparkan tingkap
diri.tunjuk ()
def btn1_onKlik (diri):
# Tetapkan teks untuk label bawah
diri.label msg.setTeks ('

Anda mengklik Ya.

')
def btn2_onKlik (diri):
# Tetapkan teks untuk label bawah
diri.label msg.setTeks ('

Anda mengklik Tidak.

')
# Buat objek aplikasi dan jalankan aplikasi
app = QApplication (sys.berhujah)
butang = MultiButton ()
aplikasi.exec ()

Tetingkap berikut akan muncul setelah melaksanakan skrip.

Sekiranya pengguna mengklik Ya butang, mesej, 'Anda mengklik Ya'akan dipaparkan sebagai teks label.

Sekiranya pengguna mengklik Tidak butang, mesej, 'Anda mengklik Tidak ' akan dipaparkan sebagai teks label.

Kesimpulannya

Kelas QPushButton membolehkan pengguna membuat satu atau lebih butang berdasarkan keperluan aplikasi. Tutorial ini menunjukkan penggunaan kelas ini untuk membuat satu atau beberapa butang, serta cara menangani peristiwa klik pada butang menggunakan fungsi pengendali acara khusus.

Cara menangkap dan streaming sesi permainan anda di Linux
Pada masa lalu, bermain permainan hanya dianggap sebagai hobi, tetapi seiring dengan berjalannya waktu, industri permainan menyaksikan pertumbuhan yan...
Permainan Terbaik untuk Dimainkan dengan Penjejakan Tangan
Oculus Quest baru-baru ini memperkenalkan idea hebat penjejakan tangan tanpa pengawal. Dengan jumlah permainan dan aktiviti yang semakin meningkat yan...
Cara Menunjukkan Overlay OSD dalam Aplikasi dan Permainan Linux Skrin Penuh
Bermain permainan skrin penuh atau menggunakan aplikasi dalam mod skrin penuh bebas gangguan dapat memisahkan anda dari maklumat sistem yang relevan y...