Tkinter – outil GUI intégré à Python

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Guide complet de Tkinter – la bibliothèque pour créer des GUI en Python

Tkinter (Tk interface) est la bibliothèque standard pour créer des interfaces graphiques utilisateur (GUI) en Python. Son nom provient de Tk, un toolkit GUI multiplateforme initialement développé pour le langage Tcl. Tkinter est le binding Python de Tk et est inclus dans la distribution standard de Python depuis la version 3.1, ce qui en fait l'outil le plus accessible pour créer des applications fenêtrées.

La bibliothèque prend en charge tous les principaux systèmes d'exploitation : Windows, Linux et macOS, garantissant ainsi la multiplateforme des applications développées. Sa simplicité d'apprentissage et ses dépendances minimales font de Tkinter un excellent choix pour les développeurs débutants, les projets éducatifs et la création de petites applications de bureau.

Histoire et architecture de Tkinter

Tkinter a été créé au début des années 1990 comme une surcouche Python pour le toolkit GUI Tk. Tk, quant à lui, a été développé par John Ousterhout à l'Université de Californie à Berkeley. En plus de 30 ans d'existence, la bibliothèque a connu une évolution significative tout en conservant sa philosophie de simplicité et de fiabilité.

L'architecture de Tkinter repose sur la programmation orientée événements. L'élément principal est la boucle principale de traitement des événements (event loop), qui attend les actions de l'utilisateur et y répond en appelant les fonctions de gestion appropriées.

Installation et premier lancement

Vérifier la présence de Tkinter

Tkinter fait partie de la bibliothèque standard de Python et ne nécessite généralement pas d'installation séparée. Pour vérifier sa disponibilité, exécutez :

python -c "import tkinter; print('Tkinter est disponible')"

Installation sur différents systèmes d'exploitation

Windows : Tkinter s'installe automatiquement avec Python.

macOS : Inclus dans la distribution standard de Python.

Linux (Ubuntu/Debian) :

sudo apt-get install python3-tk

Linux (CentOS/RHEL) :

sudo yum install tkinter
# ou pour les versions plus récentes
sudo dnf install python3-tkinter

Création de votre première application

import tkinter as tk

# Création de la fenêtre principale
window = tk.Tk()
window.title("Ma première application")
window.geometry("400x300")
window.resizable(True, True)

# Lancement de la boucle principale
window.mainloop()

Composants principaux de Tkinter

Fenêtre principale (Root Window)

La fenêtre principale est l'élément racine de toute application Tkinter. Tous les autres widgets doivent être placés à l'intérieur de celle-ci ou dans ses fenêtres filles.

import tkinter as tk

root = tk.Tk()
root.title("Titre de la fenêtre")
root.geometry("800x600+100+50")  # largeur x hauteur + décalage_x + décalage_y
root.minsize(300, 200)  # taille minimale
root.maxsize(1200, 800)  # taille maximale
root.configure(bg='lightblue')  # couleur de fond

Widgets principaux et leur utilisation

Étiquette (Label)

Label est utilisé pour afficher du texte ou des images que l'utilisateur ne peut pas modifier.

label = tk.Label(
    window, 
    text="Étiquette d'information",
    font=("Arial", 14),
    fg="blue",
    bg="white",
    anchor="center"
)
label.pack(pady=10)

Bouton (Button)

Le bouton est un élément interactif pour exécuter des actions.

def button_click():
    print("Bouton cliqué !")

button = tk.Button(
    window,
    text="Cliquez-moi",
    command=button_click,
    font=("Arial", 12),
    bg="green",
    fg="white",
    width=15,
    height=2
)
button.pack(pady=5)

Champ de saisie (Entry)

Entry est conçu pour

Recommendations