from Tkinter import * import time root = Tk() canvas = Canvas(root, width=50, height=50) canvas.pack(fill=BOTH) class Hello(Frame): def __init__(self, parent=None): Frame.__init__(self, parent) self.pack() self.make_widgets() self.status() def make_widgets(self): widget = Button(self, text='Start image processing', command=self.start) widget.pack(side=TOP) widget.configure(state=DISABLED, background='cadetblue') widget.configure(state=NORMAL, background='red') widget2 = Button(self, text='Stop image processing', command=self.stop) widget2.pack(side=TOP) widget2.configure(state=DISABLED, background='cadetblue') widget2.configure(state=NORMAL, background='red') def start(self): canvas.itemconfigure(self.square, fill="green") while 1 < 2: time.sleep(3) print "started" def stop(self): canvas.itemconfigure(self.square, fill="red") event.bind(self.run, self.stop) print "stopped" def status(self): self.square = canvas.create_rectangle(10,10,30,30, fill="red") def stop(self): root.destroy() if __name__ == '__main__': Hello().mainloop()