1. Apropos de la bibliothèque PyQt5
PyQt est un ensemble de liaisons Python pour le framework d'application Qt et s'exécute sur toutes les plateformes supportées par Qt, y compris Windows, OS X, Linux, iOS et Android. PyQt est disponible sous les licences GPL et commerciales. La version sous licence GPL est gratuite pour le développement open source.
Qt est un framework d'application multiplateforme largement utilisé pour développer des logiciels d'application pouvant être exécutés sur différentes plateformes logicielles et matérielles avec peu ou pas de modification du code de base. Il est écrit en C++ et a des liaisons pour d'autres langages tels que Python, C# et Java.
PyQt vous permet de créer des applications de bureau avec Python et Qt. C'est un ensemble de liaisons Python pour le framework Qt qui permet l'utilisation de bibliothèques et de fonctions Qt depuis Python. En utilisant PyQt, vous pouvez créer des interfaces utilisateur graphiques (GUI) avec Python et Qt, et vous pouvez utiliser l'outil de conception Qt Designer pour concevoir la GUI de manière visuelle. Avez-vous des questions spécifiques sur PyQt?
2. Exemples d'usage de la bibliothèque PyQt5
Voici un exemple simple de PyQt qui affiche une fenêtre vide avec un titre "Bonjour, monde!" :
1 2 3 4 5 6 7 8 9 |
import sys from PyQt5.QtWidgets import QApplication, QWidget if __name__ == '__main__': app = QApplication(sys.argv) w = QWidget() w.setWindowTitle('Bonjour, monde!') w.show() sys.exit(app.exec_()) |
Ce code importe les modules nécessaires de PyQt, crée une application et une fenêtre vide, définit le titre de la fenêtre comme "Bonjour, monde!", affiche la fenêtre et démarre l'application Qt avec la boucle d'événements.
Voici un autre exemple qui montre comment utiliser PyQt pour afficher un bouton et un label, et faire en sorte que le label affiche le nombre de fois où le bouton a été cliqué :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
import sys from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QLabel class MyWidget(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): self.button = QPushButton('Cliquez ici', self) self.button.clicked.connect(self.onClick) self.label = QLabel('0', self) self.label.move(100, 50) self.button.move(100, 100) def onClick(self): current_count = int(self.label.text()) current_count += 1 self.label.setText(str(current_count)) if __name__ == '__main__': app = QApplication(sys.argv) w = MyWidget() w.show() sys.exit(app.exec_()) |
Ce code définit une classe MyWidget qui hérite de la classe QWidget de PyQt et qui ajoute un bouton et un label à la fenêtre. Le bouton a un signal clicked qui est connecté à une méthode onClick qui incrémente le compteur affiché dans le label et met à jour le texte du label lorsque le bouton est cliqué.
Younes Derfoufi
CRMEF OUJDA