Bonjour,

Encore une fois je ne dois pas voir une erreur grosse comme moi.

J'ai réalisé un chronomètre qui fonction très bien (c'est déjà ça) avec la marche arrêt par l'intermédiaire de boutons.
Seulement ne voulant pas en rester là, je veux aussi le déclencher en appuyant sur la barre espace.

voici le code :
tout semble se dérouler correctement, sauf que le chronomètre de réagit pas.
Code python : 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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
 
# Suivant que l'on exécute ce script sous Python 3 ou Python 2,
# on utilisera le module Tkinter correspondant :
try:
    from tkinter import *      # module Tkinter pour Python 3
except:
    from Tkinter import *      # module Tkinter pour Python 2
import time
 
class Chronometre(Frame):  
    """ insertion du chrnomètre dans un widget frame. """                                                                
    def __init__(self, parent=None, **kw):        
        Frame.__init__(self, parent, kw)
        self._start = 0.0        
        self._elapsedtime = 0.0
        self._running = 0
        self.timestr = StringVar()               
        self.makeWidgets()      
 
    def makeWidgets(self):                         
        """ Make the time label. """
        l = Label(self, textvariable=self.timestr)
        self._setTime(self._elapsedtime)
        l.pack(fill=X, expand=NO, pady=2, padx=2)                      
 
    def _update(self): 
        """ Update the label with elapsed time. """
        self._elapsedtime = time.time() - self._start
        self._setTime(self._elapsedtime)
        self._timer = self.after(50, self._update)
 
    def _setTime(self, elap):
        """ Set the time string to Minutes:Seconds:Hundreths """
        minutes = int(elap/60)
        seconds = int(elap - minutes*60.0)
        hseconds = int((elap - minutes*60.0 - seconds)*100)                
        self.timestr.set('%02d:%02d:%02d' % (minutes, seconds, hseconds))
 
    def Start(self):                                                     
        """ Marche du chrono si arrêt. """
        if not self._running:            
            self._start = time.time() - self._elapsedtime
            self._update()
            self._running = 1        
 
    def Stop(self):                                    
        """ Arrêt du chrono si en marche. """
        if self._running:
            self.after_cancel(self._timer)            
            self._elapsedtime = time.time() - self._start    
            self._setTime(self._elapsedtime)
            self._running = 0
 
    def Reset(self):                                  
        """ Raz du chrono. """
        self._start = time.time()         
        self._elapsedtime = 0.0    
        self._setTime(self._elapsedtime)
 
    def get(self) :
        return self._running
 
 
def masw(Event,sw):
    if  sw.get() :
        sw.Stop
        print ('stop')
    else:
        sw.Start
        print ('start')
 
def main():
    root = Tk()
    sw = Chronometre(root)
    sw.pack(side=TOP)
 
    Button(root, text='Start', command=sw.Start).pack(side=LEFT)
    Button(root, text='Stop', command=sw.Stop).pack(side=LEFT)
    Button(root, text='Reset', command=sw.Reset).pack(side=LEFT)
    Button(root, text='Quit', command=root.quit).pack(side=LEFT)
 
    root.bind("<KeyPress-space>",lambda Event=Event, sw=sw :masw(Event,sw))
 
 
    root.mainloop()
 
if __name__ == '__main__':
    main()

Merci d'avance pour votre aide