L’environnement

Python est un langage clair, intuitif, massivement répandu, et devenu incontournable dans le traitement d’une multitude de tâches informatiques.

Objectifs pédagogiques

À l’issue de la formation, le·la stagiaire sera capable de :

  • Créer sa propre interface graphique avec Tkinter
  • Insérer différents composants d’interface graphique
  • Utiliser le multithreading
  • Gérer l’accès à l’interface via mot de passe

Public concerné

Technicien·ne·s, ingénieur·e·s, développeur·se·s, scientifiques, enseignant·e·s ou tout public souhaitant créer leurs interfaces graphiques.

Prérequis

Connaissances de base en Python, dont les classes, ou avoir suivi les formations « Python débutant » et « Python orienté objet ».

Un questionnaire de pré-formation est proposé pour valider l’adéquation entre le besoin et la formation.

Programme de la formation

Introduction

  • L’écosystème GUI en Python
  • Un bref historique de Tkinter

Première application

  • Ouvrir sa première fenêtre Tkinter
  • Créer un titre et modifier l’icône
  • Découvrir les widgets (boutons, labels…)
  • L’organisation des widgets (pack, grid)
  • Focus sur les frames pour organiser votre fenêtre
  • Mise en page (padx, pady, ipdx, ipdy, couleurs en standards, etc.)
  • Gestion des évènements
  • Modifier un bouton, un label, etc.

Le passage par des classes

  • Pourquoi utiliser les classes ?
  • Quelques rappels sur les classes
  • Créer une fenêtre Tkinter en passant par une classe
  • Modèle-vue-contrôleur : les bonnes pratiques

Améliorer son visuel avec ttkbootstrap

  • Présentation de ttk et des widgets associés
  • Présentation du module ttkbootstrap
  • Avantages et inconvénients de ttkbootstrap
  • Définir le style de sa fenêtre
  • La gestion des couleurs
  • Les widgets et leurs styles
  • Comment utiliser ttkbootstrap dans une classe ?

Création d’une page de connexion

  • Créer plusieurs fenêtres
  • Masquer des fenêtres
  • Faire apparaître une fenêtre suite à un clic
  • Clic gauche, clic droit, espace, entrée, tab, etc. : définir les commandes associées
  •  Découvrir messagebox pour confirmer la fermeture d’une fenêtre
  • Gérer les entrées utilisateurs
  • Sauvegarder des données et des mots de passe de manière sécurisée
  • Créer un compte utilisateur, le sauvegarder
  • Connexion grâce à un compte existant

Projet : création d’une station météo

  • Découper sa fenêtre en frame
  • Afficher des données
  • Mettre à jour les données en cliquant sur un bouton
  • Multithreading pour l’affichage et la sauvegarde de données

Visualiser des données

  • Sélectionner les données à visualiser
  • Tracer un graphique dans l’interface
  • Mise à jour automatique du graphique
  • Sauvegarder la figure

Analyse et compte-rendu des données

  • Calcul et statistique sur les données
  • Écriture d’un rapport automatique sur des données sélectionnées
  • Génération et sauvegarde de figures automatiques pour illustrer le compte rendu

Déployer son application

  • Rendre son programme exécutable