La programmation GUI Python avec Tkinter<span class="wtr-time-wrap after-title"><span class="wtr-time-number">5</span> min read</span>
python gui programmation tkinter

La programmation GUI Python avec Tkinter5 min read

Dans ce tutoriel, vous allez apprendre à créer une application python GUI avec Tkinter.

GUI signifie Graphical User Interface, c’est un terme qui désigne un programme ayant une réelle interface graphique. Concrètement, nous allons apprendre à remplacer la console de texte par un beau programme bien présenté.

Pour créer une application GUI avec python, nous avons besoin d’outils nous permettant de créer ce type de logiciel. Dans notre cas, nous allons utiliser la librairie Tkinter. C’est un des librairies les plus stable et les plus populaire pour créer des GUI en python.

L’installation de Tkinter

Tkinter est installé par défauts sous le système d’exploitation Windows. Vous n’aurez qu’à l’importer afin de pouvoir l’utiliser. Néanmoins , si vous êtes sous Linux ou MacOs, il va falloir l’installer :

Pour Linux et Mac OS

sudo apt-get install python-tk (Pour Python 2.x)
sudo apt-get install python3-tk (Pour Python 3.x)

Une fois l’installation faite, il est possible de créer des éléments graphiques directement en instanciant des objets provenant des classes fournies par Tkinter.

Voici une liste des éléments de Tkinter les plus utilisés

Radio Button: Ce bouton permets à l’utilisateur de séléctionner une certaine option parmi plusieurs proposées.

Check Button : Ce bouton permets à l’utilisateur de choisir une ou plusieurs options.

Text Box : C’est un élément ou il est possible d’afficher plusieurs lignes de texte

Text Entry : C’est un élément on on peux afficher une seule ligne de texte

Button: C’est un élément qui déclenche une action lorsque l’utilisateur clique dessus

Frame : C’est l’élément qui contiens tout les éléments cités au dessus.

La programmation GUI est orientée événements. C’est à dire que le programme n’as pas d’exécution linéaire. Il exécuteras certaines parties du code selon les actions des utilisateurs.

Exemples de programmation GUI

import tkinter as tk
fn = tk.Tk()
fn.title("Voici le titre de mon programme")
fn.geometry("1000x1000")
fn.mainloop()
Python Tkinter GUI program
Python Tkinter GUI program

On peux voir que l’on arrive à lancer une fenêtre en seulement quelques lignes de codes. Décortiquons maintenant le code plus haut afin de comprendre ce que l’on as fait

La première ligne de code permets simplement d’importer Tkinter. Ici on utilise le mot clé “as” pour faire un alias afin de raccourcir le nom du module. Ainsi il suffit de taper “tk” au lieu de “tkinter”

La seconde ligne crée un objet provenant de la class Tk. C’est la classe permettant de créer la fenêtre et de la manipuler.

La troisième ligne permets simplement de redimensionner la fenêtre. Ici on donne les dimensions en pixels sous le format “x * y “.

Enfin, on lance la fenêtre avec la méthode “mainloop()”. Cette méthode va simplement lancer l’exécution de l’objet.

Voyons maintenant comment ajouter du texte à l’intérieur de cette fenêtre.

import tkinter as tk
fn = tk.Tk()
fn.title("Voici le titre de mon programme")
fn.geometry("1000x1000")
frame1 = tk.Frame(fn)
frame1.grid()
label1 = tk.Label(frame1, text="Voici un label")
label1.grid()
fn.mainloop()

Détaillons maintenant chaque nouvelle ligne de code

la 5 ème ligne instancie l’objet Frame. On indique que le Frame est contenu dans la variable fn. A partir de la, on peux créer des objets et les placer dans notre Frame.

La ligne suivante dis au programme que l’on va modifier la Frame dans les prochaines lignes. Il doit donc actualiser la Frame et prendre en compte le contenu à l’intérieur

Ensuite, on crée une variable appelé label1. Celle-ci contiens une classe appelé tk.Label, dans ce constructeur, on passe la Frame et le texte que l’on veux afficher.

Puis , comme pour la Frame, on appelle grid() afin d’enregistrer les modifications.

Enfin, on appelle mainloop() pour lancer la fenêtre.

En conclusion

Comme vous pouvez le voir, Tkinter est assez simple à utiliser. On peux en quelques lignes de code créer des interfaces. Bien sur, nous n’avons fait effleurer les possibilités offertes par cette librairie. Dans les futurs tutoriels, nous verrons comment créer des interfaces plus complexes

Si cet article vous as plu, vous pouvez vous abonner à ma newsletter pour recevoir le guide GRATUIT Ultime pour bien débuter la programmation

Vous abonner à notre newsletter

* champ requis

Laisser un commentaire

Fermer le menu
×
×

Panier