Le widget Label
de Tkinter est un élément fondamental pour créer des interfaces graphiques (GUI) en Python. Sa polyvalence vous permet d’afficher du texte, des images, ou les deux, et de personnaliser leur apparence pour une intégration harmonieuse avec le design de votre application. Ce tutoriel vous guidera à travers les aspects essentiels de l’utilisation du widget Label
, de la création basique à la personnalisation avancée.
Table des matières :
- Création d’étiquettes basiques
- Personnalisation du texte et de l’apparence de l’étiquette
- Style des polices
- Gestion des couleurs
- Affichage des images
- Techniques avancées et considérations
1. Création d’étiquettes basiques
Créer une étiquette simple implique d’importer la librairie tkinter
, de créer la fenêtre principale de l’application, d’instancier le widget Label
, et de le placer dans la fenêtre en utilisant un gestionnaire de géométrie comme pack()
, grid()
, ou place()
.
import tkinter as tk
root = tk.Tk()
root.title("Ma première étiquette")
my_label = tk.Label(root, text="Bonjour, Tkinter !")
my_label.pack()
root.mainloop()
Ce code génère une fenêtre affichant « Bonjour, Tkinter ! ». L’argument text
est fondamental, mais de nombreuses options contrôlent l’apparence et le comportement de l’étiquette, comme exploré ci-dessous.
2. Personnalisation du texte et de l’apparence de l’étiquette
Au-delà du texte de base, vous pouvez contrôler divers aspects de l’apparence de l’étiquette en utilisant des options supplémentaires. Par exemple, vous pouvez ajuster l’alignement du texte en utilisant anchor
(par exemple, anchor=tk.W
pour l’alignement à gauche, anchor=tk.CENTER
pour l’alignement au centre) ou ajouter un padding en utilisant padx
et pady
.
import tkinter as tk
root = tk.Tk()
my_label = tk.Label(root, text="Texte centré", anchor=tk.CENTER, padx=10, pady=5)
my_label.pack()
root.mainloop()
3. Style des polices
Personnalisez la police de votre étiquette en utilisant l’option font
, qui accepte un tuple spécifiant la famille de police, la taille et le style (facultatif).
import tkinter as tk
root = tk.Tk()
my_label = tk.Label(root, text="Texte stylé", font=("Arial", 14, "italic"))
my_label.pack()
root.mainloop()
Expérimentez avec différentes familles et styles de polices disponibles sur votre système.
4. Gestion des couleurs
Contrôlez les couleurs de premier plan (texte) et d’arrière-plan en utilisant les options fg
(premier plan) et bg
(arrière-plan). Utilisez des noms de couleurs (par exemple, « blue », « red ») ou des codes de couleurs hexadécimaux (#RRGGBB).
import tkinter as tk
root = tk.Tk()
my_label = tk.Label(root, text="Texte coloré", fg="green", bg="#FFFF00")
my_label.pack()
root.mainloop()
5. Affichage des images
Affichez des images dans une étiquette en utilisant la classe PhotoImage
. N’oubliez pas de conserver une référence à l’objet PhotoImage
pour éviter la collecte des ordures.
import tkinter as tk
from tkinter import PhotoImage
root = tk.Tk()
image = PhotoImage(file="my_image.png") # Remplacez par le chemin de votre image
my_label = tk.Label(root, image=image)
my_label.image = image # Conservez une référence !
my_label.pack()
root.mainloop()
Assurez-vous que le chemin de l’image est correct. Les images PNG fonctionnent le mieux ; d’autres formats peuvent nécessiter des librairies comme Pillow pour le traitement.
6. Techniques avancées et considérations
Pour des mises en page plus complexes, utilisez les gestionnaires de géométrie grid()
ou place()
au lieu de pack()
. Explorez des options supplémentaires comme justify
pour la justification du texte, wraplength
pour le retour à la ligne du texte, et relief
pour les styles de bordure afin d’affiner davantage vos étiquettes.
Envisagez d’utiliser StringVar()
ou d’autres variables Tkinter pour mettre à jour dynamiquement le texte de l’étiquette, créant ainsi des éléments interactifs au sein de votre application.