Forum Python

Please or S’enregistrer to create posts and topics.

Comment ajouter plusieurs boutons d'une façn dynamique

Je veux créer plusieurs boutons dynamiquement à partir d'une liste. Chaque bouton doit afficher un message différent lorsqu'il est cliqué. Je ne sais pas comment lier chaque bouton à une fonction spécifique.

Salut Frederic,

Utilisez une fonction lambda pour lier chaque bouton à une action unique :

import tkinter as tk

def action(message):
    label_resultat.config(text=message)

fenetre = tk.Tk()
fenetre.title("Boutons dynamiques")

# Liste de messages
messages = ["Bonjour", "Salut", "Hello", "Hi"]

# Création des boutons
for msg in messages:
    bouton = tk.Button(fenetre, text=msg, command=lambda m=msg: action(m))
    bouton.pack()

label_resultat = tk.Label(fenetre, text="")
label_resultat.pack()

# Boucle principale
fenetre.mainloop()