Tutoriel PyQt5 - Bouton poussoir
-
Bouton poussoir PyQt5 -
QPushButton
-
PyQt5 Style de l’ensemble de widgets pour étiquette
QLabel
-
PyQt5 Événement de clic d’étiquette
QLabel
Le widget bouton poussoir QPushButton
est un bouton de commande dans PyQt5. Il est cliqué par l’utilisateur pour commander au PC d’effectuer une action spécifique, comme Appliquer
, Annuler
et Sauvegarder
.
Bouton poussoir PyQt5 - QPushButton
import sys
from PyQt5 import QtWidgets
def basicWindow():
app = QtWidgets.QApplication(sys.argv)
windowExample = QtWidgets.QWidget()
buttonA = QtWidgets.QPushButton(windowExample)
labelA = QtWidgets.QLabel(windowExample)
buttonA.setText("Click!")
labelA.setText("Show Label")
windowExample.setWindowTitle("Push Button Example")
buttonA.move(100, 50)
labelA.move(110, 100)
windowExample.setGeometry(100, 100, 300, 200)
windowExample.show()
sys.exit(app.exec_())
basicWindow()
Où,
buttonA = QtWidgets.QPushButton(windowExample)
Le bouton A est le bouton poussoir Q de QtWidgets et il doit être ajouté à la fenêtre Exemple de la même manière que les étiquettes présentées dans les derniers chapitres (/fr/tutorial/pyqt5/pyqt5-label/).
buttonA.setText("Click!")
Il définit le texte du boutonA
comme étant Click!
.
En fait, ça ne va rien faire.
PyQt5 Style de l’ensemble de widgets pour étiquette QLabel
Le style du widget PyQt5 QLabel
comme la couleur de fond, la famille de police et la taille de police peut être défini avec la méthode setStyleSheet
. Il fonctionne comme une feuille de style dans le CSS.
buttonA.setStyleSheet(
"background-color: red;font-size:18px;font-family:Times New Roman;"
)
Il définit buttonA
avec les styles suivants,
Style | Valeur |
---|---|
background-color |
red |
font-size |
18px |
font-family |
Times New Roman |
Il est pratique de définir les styles dans PyQt5 car il est similaire au CSS.
import sys
from PyQt5 import QtWidgets
def basicWindow():
app = QtWidgets.QApplication(sys.argv)
windowExample = QtWidgets.QWidget()
buttonA = QtWidgets.QPushButton(windowExample)
labelA = QtWidgets.QLabel(windowExample)
buttonA.setStyleSheet(
"background-color: red;font-size:18px;font-family:Times New Roman;"
)
buttonA.setText("Click!")
labelA.setText("Show Label")
windowExample.setWindowTitle("Push Button Example")
buttonA.move(100, 50)
labelA.move(110, 100)
windowExample.setGeometry(100, 100, 300, 200)
windowExample.show()
sys.exit(app.exec_())
basicWindow()
PyQt5 Événement de clic d’étiquette QLabel
L’événement de clic de bouton est connecté à une fonction spécifique avec la méthode QLabel.clicked.connect(func)
.
import sys
from PyQt5 import QtWidgets
class Test(QtWidgets.QMainWindow):
def __init__(self):
QtWidgets.QMainWindow.__init__(self)
self.buttonA = QtWidgets.QPushButton("Click!", self)
self.buttonA.clicked.connect(self.clickCallback)
self.buttonA.move(100, 50)
self.labelA = QtWidgets.QLabel(self)
self.labelA.move(110, 100)
self.setGeometry(100, 100, 300, 200)
def clickCallback(self):
self.labelA.setText("Button is clicked")
if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
test = Test()
test.show()
sys.exit(app.exec_())
Lorsque le QPushButton
boutonA
est cliqué, il déclenche la fonction clickCallback
pour définir le texte du label comme Button is clicked
.
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook