Python : Tkinter
De www.yakakliker.org
Passer de la console à une interface graphique (GUI) est une étape passionnante. En Python, l'outil standard inclus par défaut s'appelle Tkinter.
Contrairement à un script classique qui s'exécute de haut en bas, une interface graphique fonctionne avec une boucle d'événements (event loop) : le programme "attend" que l'utilisateur clique sur un bouton ou tape du texte.
Les concepts de base de Tkinter
Pour créer une fenêtre, nous manipulons des Widgets (composants graphiques) :
- Tk : La fenêtre principale.
- Label : Un texte affiché.
- Entry : Un champ de saisie de texte.
- Button : Un bouton cliquable.
- Listbox : Une zone pour afficher notre liste d'invités.
Exemple
import tkinter as tk
def dire_bonjour():
nom = entree.get() # On récupère le texte de la saisie
label_resultat.config(text=f"Bonjour {nom} !")
# 1. Création de la fenêtre
fenetre = tk.Tk()
fenetre.title("Mon Premier Programme")
fenetre.geometry("300x200")
# 2. Ajout des composants
label_instruction = tk.Label(fenetre, text="Entrez votre nom :")
label_instruction.pack(pady=10)
entree = tk.Entry(fenetre)
entree.pack()
bouton = tk.Button(fenetre, text="Valider", command=dire_bonjour)
bouton.pack(pady=10)
label_resultat = tk.Label(fenetre, text="")
label_resultat.pack()
# 3. Lancement de la boucle principale
fenetre.mainloop()
Analyse factuelle du fonctionnement
.pack(): C'est un gestionnaire de géométrie. Il place les éléments les uns en dessous des autres.command=dire_bonjour: On lie le bouton à une fonction. Notez qu'on ne met pas de parenthèses()à la fonction ici, car on veut que le bouton l'appelle plus tard, au moment du clic..mainloop(): Cette ligne est cruciale. Elle empêche la fenêtre de se fermer immédiatement et permet à Python d'écouter les clics de souris.