Ce livre sur le framework PyQt5 s’adresse aux développeurs qui, possédant déjà une expérience en développement avec le langage Python, souhaitent disposer des connaissances nécessaires et avancées pour concevoir des interfaces graphiques.
De la notion de widget PyQt, en passant par les diverses façons d'agencer et de disposer les éléments d’une interface graphique, ce livre étudie en profondeur l'architecture et la conception d'une application PyQt. L’auteur détaille la gestion des...
Ce livre sur le framework PyQt5 s’adresse aux développeurs qui, possédant déjà une expérience en développement avec le langage Python, souhaitent disposer des connaissances nécessaires et avancées pour concevoir des interfaces graphiques.
De la notion de widget PyQt, en passant par les diverses façons d'agencer et de disposer les éléments d’une interface graphique, ce livre étudie en profondeur l'architecture et la conception d'une application PyQt. L’auteur détaille la gestion des évènements, les styles et les apparences d'une interface, la réalisation d’animations, l'interaction avec des bases de données relationnelles, l’intégration d’éléments sonores ou vidéo, la gestion des couches réseau ou encore le multithreading.
Pour terminer, un chapitre est consacré à des utilisations de PyQt5 qui démontrent tout l'éclectisme du framework : l'affichage de graphiques et de diagrammes de données, le web browsing ou l'animation et la modélisation en 3D.
À l’issue de ce livre, le lecteur sera en mesure d’être rapidement opérationnel en développement avec PyQt5.
Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.
2.3.3 Exemple de gestion personnalisée des évènements
2.3.4 Fonctions et décorateurs
2.4 Passage de paramètres supplémentaires à des slots
2.4.1 Introduction
2.4.2 Utilisation du mot-clé lambda
2.4.3 Utilisation de partial
Modèle-Vue-Contrôleur (MVC) et PyQt
1. Introduction
2. Le Modèle-Vue-Contrôleur (MVC)
2.1 Introduction
2.2 L'esprit du paradigme MVC
3. Développement d'une application de calculatrice
3.1 Introduction
3.2 Analyse, architecture et codage
3.2.1 Développement de la vue
3.2.2 Le modèle
3.2.3 Développement du contrôleur
3.3 Le code global de la calculatrice
3.4 Apparence écran LCD
4. Développement d'une application Notepad
4.1 Introduction
4.2 Programmation de l'application
4.3 Code global de l'application Notepad
5. Développement d'une application d'éditeur de texte enrichi
5.1 Introduction
5.2 Programmation de l'application
5.3 Code global de l'application d'édition de texte enrichi
6. Conclusion du chapitre
Gestion des styles et des apparences en PyQt
1. Introduction
2. Manipuler les polices, l'objet QFont
2.1 Utiliser l'objet QFont
2.2 La question des polices de caractères non installées
3. Manipuler les images en PyQt
3.1 Utilisation de QPixmap pour les images
3.2 Plus loin avec QPixmap pour les images
3.2.1 L'insertion dans un Qlabel avec du texte
3.2.2 Modifier les dimensions de l'image après insertion
4. Manipuler les icônes en PyQt
4.1 Introduction
4.2 Exemple d'utilisation
5. Les fichiers de ressources en PyQt
5.1 Introduction
5.2 Ressources et PyQt
6. L'usage de QPalette en PyQt
6.1 Introduction
6.2 Utilisation de QPalette
7. L'usage de QBrush en PyQt
7.1 Introduction
7.2 Utilisation de QBrush
8. La gestion des styles en PyQt
8.1 Introduction
8.2 Première utilisation de QSS
8.3 Plus loin avec QSS
8.3.1 Enrichissement de l'exemple
8.3.2 Des valorisations plus fines
8.3.3 Le préfixe # en QSS
8.3.4 Le préfixe « . » en QSS
9. Conclusion du chapitre
Les animations en PyQt
1. Introduction
2. Des animations simples en PyQt
2.1 Introduction
2.2 Une première animation géométrique
2.3 Les limites de l'usage de QPropertyAnimation
2.4 Couleurs et animation en PyQt
3. Animation plus élaborée avec QPropertyAnimation
3.1 Introduction
3.2 Animations et courbe de Bézier
4. Notion de scène graphique en PyQt
4.1 Introduction
4.2 Exemple d'utilisation
Gestion et usage des bases de données en PyQt
1. Introduction
1.1 Les bases de données relationnelles
1.2 Le système de base de données SQLite
2. Exemple détaillé avec SQLite
2.1 Création de la base de données
2.2 Connexion à la base de données
2.3 Première insertion de données dans la base de données
2.4 Insertion des autres données dans la base de données
2.5 Modification de données existantes dans la base de données
2.6 Exemple de requête utilisant une jointure
2.7 Requête préparée en PyQt
2.7.1 La méthode par substitution des critères
2.7.2 La méthode par requête préparée
3. Plus loin avec l'utilisation de QSqlTableModel
3.1 Introduction
3.2 Exemple d'utilisation
4. L'utilisation de QSqlRelationalTableModel
4.1 Introduction
4.2 Exemple d'utilisation
5. Le mapping de données avec QDataWidgetMapper
5.1 Introduction
5.2 Exemple d'utilisation
Son et vidéo avec PyQt
1. Introduction
2. Le son dans PyQt
2.1 Jouer un simple son
2.2 Lire ou enregistrer un son
2.2.1 Introduction
2.2.2 Vérification de la présence d'un micro
2.2.3 Développement de l'application
3. La vidéo dans PyQt
3.1 Introduction
3.2 Application de capture d'image depuis un flux vidéo
3.2.1 Vérification de la présence d'une caméra
3.2.2 Développement de l'application
Réseaux et gestion des couches basses
1. Introduction
2. PyQt et les sockets
2.1 Introduction
2.2 Adressage IP
2.3 Protocoles de transmission TCP et UDP
2.4 Réalisation d'une messagerie instantanée locale basée sur UDP
2.4.1 Introduction
2.4.2 Développement de la messagerie UDP
2.5 Réalisation d'une messagerie instantanée locale basée sur TCP
2.5.1 Introduction
2.5.2 Développement de la messagerie TCP
3. PyQt et les requêtes HTTP
3.1 Introduction
3.2 Exemples sur la thématique PyQt et HTTP
3.2.1 Récupérer le contenu d'une page web
3.2.2 Une requête POST en PyQt
Le multithreading en PyQt et sujets assimilés
1. Introduction
2. Utilisation de la classe QTimer
2.1 Introduction
2.2 Développement utilisant QTimer
3. Le multithreading en PyQt
3.1 Introduction
3.2 Mise en évidence de l'utilisation de QThread
3.3 Exemple avancé avec QThread
4. Pool de threads en PyQt
4.1 Introduction
4.2 Petit exemple d'utilisation de QThreadPool
Usages étendus de PyQt
1. Introduction
2. Diagrammes de données en PyQt
2.1 Introduction
2.2 Exemple de diagramme en PyQt : le pourcentage CPU
3. Web browsing en PyQt
3.1 Introduction
3.2 Développement d'un navigateur web
4. Modélisation 3D en PyQt
4.1 Introduction
4.2 Modélisation 3D en PyQt
4.3 Exemple d'application avec OpenGL en PyQt
Index
Produit correspondant parfaitement à mes attentes et à la description. Livraison rapide et en bon état.
Fabrice F
Livre très interressant sur la création de GUI en PyQt5, le seul en français à ma connaissance. Bien que pas mal de sujets sont déjà traités sur LearnPyQt, d'autres en revanche sont traités (SQL, QPropertyAnimation,...) et mériteraient un developpement plus important de la part de l'auteur car à mon avis, ils ne refletent pas suffisament pas la puissance de ces modules. Il manque aussi quelques chapitres sur Qt Designer, y compris la création de modules en utilisant la promotion des widgets. Toutefois, c'est un très bon livre pour qui veut signicier à la création de GUI avec PyQt5. PyQt6 est sorti depuis la fin d'année. A quand une version de ce livre en PyQt6 ? Il y a pas mal de différences mais celles-ci sont loin d'être insurmontables. Je le recommande vivement.
Anonyme
Bien.
Anonyme
Benoît PRIEUR
Diplômé de l'ISIMA de Clermont-Ferrand, Benoît PRIEUR a exercé pendant plusieurs années en tant qu'ingénieur freelance. Spécialisé dans le développement avec les langages Python, C++, Rust et C#, il est aujourd’hui CTO dans une start-up en Intelligence Artificielle. Également formateur et conférencier sur diverses technologies (relatives notamment à l'informatique quantique), il écrit régulièrement des articles sur la programmation de logiciels