1. Livres et vidéos
  2. PyQt5 - Développez vos interfaces graphiques en Python

PyQt5 Développez vos interfaces graphiques en Python

  • En stock
  • Expédié en 24h00
  • Livraison à partir de 0,01 €
  • Version en ligne offerte pendant 1 an
  • 1 h d'accès gratuit à tous nos livres et vidéos pour chaque commande
  • Accessible immédiatement
  • Version HTML
  • Accès illimité 24h/24, 7J/7
  • Accès illimité 24h/24, 7J/7
  • Tous les livres en ligne, les vidéos et les cours enregistrés ENI
  • Plus de 10 nouveautés livres et vidéos chaque mois
  • Les nouveautés disponibles le jour de leur sortie
  • Accès 100% en ligne

Présentation

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.



Quizinclus dans
la version en ligne !
  • Testez vos connaissances à l'issue de chaque chapitre
  • Validez vos acquis

Table des matières

  • Introduction et présentation de PyQt
    • 1. Présentation générale
      • 1.1 Introduction
      • 1.2 Présentation de Qt
      • 1.3 Usage de Qt avec un autre langage que C++
      • 1.4 Première approche de PyQt
      • 1.5 Logiciels connexes à PyQt
      • 1.6 Qui utilise PyQt ?
      • 1.7 La question de la documentation de PyQt
    • 2. Installation de PyQt
      • 2.1 Introduction
      • 2.2 Installation de PyQt
      • 2.3 Installation de Qt Designer
    • 3. Premier exemple en PyQt
      • 3.1 Introduction
      • 3.2 Un programme « Hello world »
      • 3.3 Un programme « Hello world » plus évolué
    • 4. Conclusion du chapitre
  • Inventaires des widgets PyQt
    • 1. Introduction
    • 2. Inventaire des widgets PyQt
      • 2.1 Widget QWidget
        • 2.1.1 Propriétés et méthodes de classes
        • 2.1.2 Les fenêtres QWidget de niveau supérieur
        • 2.1.3 Les principales propriétés de QWidget
      • 2.2 Widget QLabel
        • 2.2.1 Introduction
        • 2.2.2 Exemple d'utilisation
      • 2.3 Widget QLineEdit
        • 2.3.1 Introduction
        • 2.3.2 Exemple d'utilisation
      • 2.4 Widget QPushButton
        • 2.4.1 Introduction
        • 2.4.2 Utilisation
      • 2.5 Widget QComboBox
        • 2.5.1 Introduction
        • 2.5.2 Utilisation
      • 2.6 Widget QSpinBox
        • 2.6.1 Introduction
        • 2.6.2 Exemple d'utilisation
      • 2.7 Widget QDateTimeEdit
        • 2.7.1 Introduction
        • 2.7.2 Utilisation
        • 2.7.3 Un mot au sujet de QDate et de QTime
      • 2.8 Widget QProgressBar
        • 2.8.1 Introduction
        • 2.8.2 Exemple d'utilisation
      • 2.9 Widget QTextEdit
        • 2.9.1 Introduction
        • 2.9.2 Exemple d'utilisation
        • 2.9.3 Un mot sur le widget QPlainTextEdit
  • La disposition en PyQt
    • 1. Introduction
    • 2. Inventaire des widgets de disposition en PyQt
      • 2.1 QHBoxLayout et QVBoxLayout
        • 2.1.1 Introduction
        • 2.1.2 Premier exemple avec QVBoxLayout
        • 2.1.3 Transposition de l'exemple avec QHBoxLayout
      • 2.2 QGridLayout
        • 2.2.1 Introduction
        • 2.2.2 Exemple d'utilisation
        • 2.2.3 Plus loin avec la fonction addWidget
      • 2.3 QFormLayout
        • 2.3.1 Introduction
        • 2.3.2 Exemple d'utilisation
      • 2.4 QTabWidget
        • 2.4.1 Introduction
        • 2.4.2 Exemple d'utilisation
      • 2.5 QGroupBox
        • 2.5.1 Introduction
        • 2.5.2 Exemple d'utilisation
      • 2.6 QToolBar
        • 2.6.1 Introduction
        • 2.6.2 Exemple d'utilisation
  • Gestion des évènements en PyQt
    • 1. La gestion d'évènements en PyQt
      • 1.1 Propos introductif
      • 1.2 Premier exemple : signaux et slots
    • 2. Plus loin dans la gestion d'évènements
      • 2.1 La transmission de données
      • 2.2 Les limitations issues de C++
      • 2.3 Développer sa propre gestion d'évènements
        • 2.3.1 Introduction
        • 2.3.2 Utilisation de pyqtSignal
        • 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

Auteur

Benoît PRIEUREn savoir plus

Ingénieur en informatique diplômé de l'ISIMA de Clermont-Ferrand, Benoît PRIEUR conduit des missions de conseil pour le compte de sa société Soarthec. Spécialisé dans le développement en Python et en C#, il met quotidiennement en œuvre ses compétences de développement auprès de ses clients. Il est également formateur sur les technologies .NET et le développement Python.

Caractéristiques

  • Nombre de pages 331 pages
  • Parution janvier 2021
    • Livre (broché) - 17 x 21 cm
    • ISBN : 978-2-409-02862-5
    • EAN : 9782409028625
    • Ref. ENI : EPPYQT5
  • Parution janvier 2021
    • HTML
    • ISBN : 978-2-409-02863-2
    • EAN : 9782409028632
    • Ref. ENI : LNEPPYQT5

Téléchargements

En complétant ce formulaire, vous acceptez d'être contacté afin de recevoir des informations sur nos produits et services ainsi que nos communications marketing. Vous aurez la possibilité de vous désabonner de nos communications à tout moment. Pour plus d'informations sur notre politique de protection des données, cliquez ici.
  • Des fichiers complémentaires (756 Ko)