Bonjour à tous,

Ça fait 2 jours que je m'arrache les cheveux sur le problème suivant:
Voici un petit programme pour utiliser la fonction "Checkbutton" du module Tkinter :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
from tkinter import *
 
master = Tk()
 
var = IntVar()
 
def actualiser():
    label1.config(text = var.get())
 
c = Checkbutton(master, text = "Bouton", variable = var)
c.grid(column = 0, row = 1)
frame = Frame(master)
label1 = Label(frame, text = var)
label1.pack(side = TOP)
frame.grid(column=0, row=0)
bouton = Button(master, text="actualiser", command = actualiser)
bouton.grid(column = 0, row = 2)
 
master.mainloop()
Ça donne une fenêtre avec un checkbutton qu'on coche ou non et un bouton "actualiser" qui affiche la valeur du checkbutton (1 quand coché et 0 quand non coché) :
Nom : 0.jpg
Affichages : 1012
Taille : 6,8 Ko
Nom : 1.jpg
Affichages : 982
Taille : 7,1 Ko

Le programme fonctionne nickel mais quand je l'insère dans un programme plus gros en tant que fonction :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
from tkinter import *
 
def fonc():
    master = Tk()
 
    var = IntVar()
 
    def actualiser():
        label1.config(text = var.get())
 
    c = Checkbutton(master, text = "Bouton", variable = var)
    c.grid(column = 0, row = 1)
    frame = Frame(master)
    label1 = Label(frame, text = var)
    label1.pack(side = TOP)
    frame.grid(column=0, row=0)
    bouton = Button(master, text="actualiser", command = actualiser)
    bouton.grid(column = 0, row = 2)
 
root = Tk()
 
Bouton = Button(root, text="Test", command=fonc)
Bouton.pack()
 
root.mainloop()
J'appelle la fonction avec un bouton et SURPRISE! Ça ne marche plus...
Je ne comprends vraiment pas pourquoi! Pouvez-vous m'aider?

Merci d'avance