title: Tkinter function calling on its own
body: <p>Using <code>tkinter</code>, I'm trying to make a ball appear on the screen then disappear (become the same color as the background) upon the "w" key being clicked, but it immediately disappears upon running the program.</p>
  
  <p>I think this may be due to the structuring of the code, with the function <code>ball_disappear</code> before the variables, but I didn't notice a difference when I put the function below it. Here's the code.</p>
  
  <pre><code>from tkinter import *
  
  root = Tk()
  
  height = 700
  width = 1000
  canvas = Canvas(width=width, height=height)
  canvas_background = '#63fff9'
  canvas.configure(background=canvas_background)
  root.title = "Ball Bouncer Tk"
  
  def ball_disappear():
      canvas.itemconfig(ball, fill=canvas_background, outline=canvas_background)
      canvas.update()
  
  ballP1 = 400
  ballP2 = 400
  ballP3 = 600
  ballP4 = 600
  
  ball = canvas.create_oval(ballP1, ballP2, ballP3, ballP4, fill='#000000', tags="ball")
  
  canvas.pack()
  canvas.bind("w", ball_disappear())
  canvas.mainloop()
  </code></pre>