Méthodes QPushButton
le QBoutonPush la classe a de nombreuses méthodes pour effectuer diverses tâches liées aux boutons. Certaines des méthodes les plus couramment utilisées de cette classe sont mentionnées ci-dessous :
Nom de la méthode | Objectif |
---|---|
texte() | Utilisé pour lire le libellé du bouton. |
Définir le texte() | Utilisé pour définir le texte dans la légende du bouton. |
setIcon() | Permet de définir une icône dans le libellé du bouton. |
définir par defaut() | Utilisé pour définir le bouton par défaut. |
setEnabled() | Utilisé pour activer ou désactiver les boutons. Une valeur de Vrai est utilisé pour activer le bouton, et une valeur de Faux est utilisé pour désactiver le bouton. |
setCheckable() | Utilisé pour identifier si le bouton est enfoncé ou relâché. |
est vérifié() | Utilisé pour lire l'état du bouton qui est une valeur booléenne. |
basculer() | Utilisé pour basculer entre les états. Si la valeur actuelle de l'état du bouton est Vrai, alors la valeur passera à Faux, et vice versa. |
QUtilisation des boutons-poussoirs
Les sections suivantes fournissent plusieurs exemples simples pour expliquer l'utilisation de QBoutonPush.
Exemple 1 : créer un bouton-poussoir simple
Le script suivant est utilisé pour créer un seul bouton dans la fenêtre. Le script attachera une fonction personnalisée à l'événement cliqué du bouton pour vérifier si le bouton a été cliqué. La fenêtre affichera un bouton suite à l'exécution du code. Si l'utilisateur clique sur le bouton, le texte « Le bouton est enfoncé » apparaîtra dans l'étiquette.
# Importez les modules nécessairesimporter le système
de PyQt5.QtWidgets importent QApplication, QWidget, QPushButton, QLabel
# Définir la classe pour créer un seul bouton poussoir
classe ButtonExample(QWidget):
def __init__(self):
# Appeler le constructeur parent
super().__init__()
# Créer un bouton
soi.btn = QPushButton('Cliquez-moi', soi)
# Définir le texte de l'info-bulle pour le bouton
soi.btn.setToolTip('Ceci est un simple bouton')
# Définir la géométrie du bouton
soi.btn.setGeometry(100, 20, 100, 30)
# Fonction d'appel lorsque le bouton est cliqué
soi.btn.cliqué.se connecter (se.surClic)
# Définir le libellé en bas du bouton
soi.msgLabel = QLabel(", soi)
# Définir la géométrie de l'étiquette
soi.msgLibellé.setGeometry (90, 60, 290, 60)
# Définir le titre de la fenêtre
soi.setWindowTitle('Utilisation du bouton-poussoir')
# Définir la géométrie de la fenêtre principale
soi.setGeometry (10, 10, 300, 150)
# Définir la position de la fenêtre principale dans l'écran
soi.déplacer (850, 300)
# Afficher la fenêtre
soi.spectacle()
# Définir la fonction pour gérer l'événement de clic du bouton
def onClicked(self):
# Définir le texte pour l'étiquette
soi.msgLibellé.setText('Le bouton est enfoncé.')
# Créer un objet d'application et exécuter l'application
app = QApplication(sys.argv)
bouton = Exemple de bouton()
application.exec()
La fenêtre suivante apparaîtra après l'exécution du script.
Si l'utilisateur clique sur le Cliquez sur moi bouton, alors le texte suivant apparaîtra dans la légende sous le bouton.
Exemple 2 : créer plusieurs boutons-poussoirs
Le script suivant créera plusieurs boutons-poussoirs en utilisant le QBoutonPush classer. Deux boutons sont créés dans le script. L'événement cliqué du 'OuiLe bouton ' est attaché à une méthode nommée btn1_onClicked(), et l'événement cliqué du 'NonLe bouton ' est attaché à une méthode nommée btn2_onClicked(). Une légende créée sous les boutons affichera le message spécifié en fonction du bouton cliqué par l'utilisateur. le setGeometry() la fonction est utilisée pour chaque étiquette et bouton pour définir la position des objets dans la fenêtre.
importer le systèmede PyQt5.QtWidgets importent QApplication, QWidget, QPushButton, QLabel
classe MultiButtons (QWidget):
def __init__(self):
# Appeler le constructeur parent
super().__init__()
# Définir l'étiquette en haut du bouton
soi.topLabel = QLabel('
Aimez-vous le python?
', soi)# Définir la géométrie de l'étiquette
soi.topLabel.setGeometry(100, 20, 290, 50)
# Créer le premier bouton
soi.btn1 = QPushButton('Oui', soi)
# Définir la géométrie du bouton
soi.btn1.setGeometry(130, 70, 60, 40)
# Fonction d'appel lorsque le bouton est cliqué
soi.btn1.cliqué.se connecter (se.btn1_onClicked)
# Créer le deuxième bouton
soi.btn2 = QPushButton('Non', soi)
# Définir la géométrie du bouton
soi.btn2.setGeometry (200, 70, 60, 40)
# Fonction d'appel lorsque le bouton est cliqué
soi.btn2.cliqué.se connecter (se.btn2_onClicked)
# Définir le libellé en bas du bouton
soi.msgLabel = QLabel(", soi)
# Définir la géométrie de l'étiquette
soi.msgLibellé.setGeometry(130, 120, 300, 80)
# Définir le titre de la fenêtre
soi.setWindowTitle('Utilisation de plusieurs boutons-poussoirs')
# Définir la géométrie de la fenêtre principale
soi.setGeometry (10, 10, 400, 200)
# Définir la position de la fenêtre principale dans l'écran
soi.déplacer (850, 300)
# Afficher la fenêtre
soi.spectacle()
def btn1_onClicked(self):
# Définir le texte pour l'étiquette du bas
soi.msgLibellé.Définir le texte('
Vous avez cliqué sur Oui.
')def btn2_onClicked(self):
# Définir le texte pour l'étiquette du bas
soi.msgLibellé.Définir le texte('
Vous avez cliqué sur Non.
')# Créer un objet d'application et exécuter l'application
app = QApplication(sys.argv)
bouton = MultiBoutons()
application.exec()
La fenêtre suivante apparaîtra après l'exécution du script.
Si l'utilisateur clique sur le Oui bouton, le message, 'Vous avez cliqué sur Oui' sera affiché comme texte d'étiquette.
Si l'utilisateur clique sur le Non bouton, le message, 'Vous avez cliqué sur Non' sera affiché comme texte d'étiquette.
Conclusion
La classe QPushButton permet aux utilisateurs de créer un ou plusieurs boutons en fonction des exigences de l'application. Ce didacticiel a montré l'utilisation de cette classe pour créer un ou plusieurs boutons, ainsi que comment gérer les événements de clic de boutons à l'aide de fonctions de gestionnaire d'événements personnalisés.