title: Tkinter only works for one button press and not the others?
body: <p>I am using a Tkinter window to pass information over the serial port to an arduino that turns a stepper motor a certain number of steps. Basically I have buttons that correspond to the number of steps that i want the motor to take. When I press the buttons I want the motor to move that many steps. Ill post some snippets of my code BUT Basically my problem is that the window works beautifully for the first button press but then when I click other buttons to get the motor to keep moving I don't get anything. It almost seems like the Tkinter window only works for one click or gets stuck in the callback function or something. </p>
  
  <p>The Callback Functions:</p>
  
  <pre><code>def firstGrating():
      arduino.write('1800')
      tkMessageBox.showwarning(title= 'Spectrometer', message = 'I am moving to the 1800 Grating...')
      tkMessageBox.showwarning(title= 'Spectrometer', message = 'Please Wait Until I Tell You That I AM FINISHED!!!')
      while True:
          message = arduino.readline()
          if len(message) &gt; 10:
              tkMessageBox.showwarning(title= 'Spectrometer', message = message)
      return
  
  def secondGrating():
      arduino.write('150')
      tkMessageBox.showwarning(title= 'Spectrometer', message = 'I am moving to the 150 Grating...')
      tkMessageBox.showwarning(title= 'Spectrometer', message = 'Please Wait Until I Tell You That I AM FINISHED!!!')
      while True:
          message = arduino.readline()
          if len(message) &gt; 10:
              tkMessageBox.showwarning(title= 'Spectrometer', message = message)
      return
  
  def thirdGrating():
      arduino.write('3600')
      tkMessageBox.showwarning(title= 'Spectrometer', message = 'I am moving to the 3600 Grating...')
      tkMessageBox.showwarning(title= 'Spectrometer', message = 'Please Wait Until I Tell You That I AM FINISHED!!!')
      while True:
          message = arduino.readline()
          if len(message) &gt; 10:
              tkMessageBox.showwarning(title= 'Spectrometer', message = message)
      return
  </code></pre>
  
  <p>and this is the part where I try to setup my Tkinter window:</p>
  
  <pre><code>win = Tk()
  win.geometry("600x400+500+500")
  win.title('Spectrometer Controller')
  
  mlabel = Label(text = 'Select One of The Available Gratings')
  mlabel.pack()
  
  mButton1 = Button(win, text = '1800', command = lambda: firstGrating())
  mButton1.pack()#.grid(row=0, column=1)
  mButton2 = Button(win, text = '150', command = lambda: secondGrating())
  mButton2.pack()#.grid(row=0, column=2)
  mButton3 = Button(win, text = '3600', command = lambda: thirdGrating())
  mButton3.pack()#.grid(row=0, column=3)
  
  win.mainloop()
  </code></pre>