Déclencher fonction avec transmission de variable par un bouton

jelo_34000 Messages postés 2 Statut Membre -  
yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
Je cherche a activer fonction en cliquant sur un bouton qui envoie une variable à cette fonction, qui retourne la valeur modifiée. J'ai écrit un script très court, la valeur est modifiée, mais sans avoir à cliquer.

from tkinter import *

def exemple_fonction(p1):
p1[0] = 3

a = [1]

root = Tk()
root.geometry('200x100')

btn = Button(root, text="Créer une nouvelle fenêtre", command = exemple_fonction(a) )

btn.pack(pady = 10)

print(a)

root.mainloop()

la console m'affiche bien [3]
C'est sans doute une question simple, mais je suis un complet débutant de 60 ans. Merci de votre indulgence et pour votre aide.

1 réponse

  1. jelo_34000 Messages postés 2 Statut Membre
     
    je vois qu'un message du forum juste avant le mien n'est pas éloigné, mais les réponses ne m'aident pas
    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      peut-être ainsi:
      from functools import partial
      # ...
      cb=partial(exemple_fonction,a)
      btn = Button(root, text="Créer une nouvelle fenêtre", command = cb )  
      0