Sharing Information Between Event-Handler Functions : Event « GUI Tk « Python






Sharing Information Between Event-Handler Functions

Sharing Information Between Event-Handler Functions
 
from Tkinter import *

class MyApp:
  def __init__(self, parent):
    self.myLastButtonInvoked = None    
    self.myParent = parent   
    self.myContainer1 = Frame(parent)
    self.myContainer1.pack()
    
    self.yellowButton = Button(self.myContainer1, command=self.yellowButtonClick)   
    self.yellowButton.configure(text="YELLOW")     
    self.yellowButton.pack(side=LEFT)

    self.redButton = Button(self.myContainer1, command=self.redButtonClick)  
    self.redButton.configure(text="RED")
    self.redButton.pack(side=LEFT)  
    
    self.whiteButton = Button(self.myContainer1, command=self.whiteButtonClick)   
    self.whiteButton.configure(text="WHITE")     
    self.whiteButton.pack(side=LEFT)
    
  def redButtonClick(self):   
    print "RED button clicked.  Previous button invoked was", self.myLastButtonInvoked  ### 2
    self.myLastButtonInvoked = "RED" 
    
  def yellowButtonClick(self):  
    print "YELLOW button clicked.  Previous button invoked was", self.myLastButtonInvoked ### 2
    self.myLastButtonInvoked = "YELLOW" 
        
  def whiteButtonClick(self):  
    print "WHITE  button clicked.  Previous button invoked was", self.myLastButtonInvoked ### 2
    self.myLastButtonInvoked = "WHITE" 
       
    
root = Tk()
myapp = MyApp(root)
root.mainloop()

           
         
  








Related examples in the same category

1.Binding an event with an event handlerBinding an event with an event handler
2.Associating arguments to an event-handler functionAssociating arguments to an event-handler function
3.What Events Does 'Command' Bind To?What Events Does 'Command' Bind To?
4.adds callbacks function to a buttonadds callbacks function to a button
5.Add system exit action to a buttonAdd system exit action to a button
6.Update Label in action event
7.Class wrapper for GUI
8.Use lambda to generate a call back function for a buttonUse lambda to generate a call back function for a button