title: Changing the colour of a Tkinter button in a function
body: <p>I want to change the colour of a button when pressing a different button. The below code recreates the Attribrute Error.</p>
  
  <p>Ideally the solution should be able to change all of the attributes of the button (see the attempted state change) but I didn't put this in the title because I don't know if 'attributes' is the right word.</p>
  
  <pre><code>import Tkinter
  
  def tester():
  
      class window(Tkinter.Tk):
          def __init__(self,parent):
              Tkinter.Tk.__init__(self,parent)
              self.parent = parent
              self.initialize()
  
          def initialize(self):
              self.grid()
              button1 = Tkinter.Button(self,text=u"Button")
              button1.grid(padx=5,pady=5)
  
              button2 = Tkinter.Button(self,text=u"Change",command=self.colourer)
              button2.grid(column=1,row=0,pady=5)  
  
              button3 = Tkinter.Button(self,text=u"Disabled",state='disabled')
              button3.grid(column=1,row=0,pady=5)                     
  
          def colourer(self):
              self.button1.configure(bg='red')
  #           self.button1.config(bg='red')  -- this gives same error
  #           self.button3.configure(state='normal')  -- as does this
      if __name__ == "__main__":
          app = window(None)
          app.title('Tester')
          app.mainloop()
  
  tester()
  </code></pre>
  
  <p>All of the ways suggested here give the same error: <a href="https://stackoverflow.com/questions/21458207/changing-colour-of-buttons-in-tkinter">Changing colour of buttons in tkinter</a></p>
  
  <p>Thanks</p>