Прежде всего, если вы можете использовать какую-то другую систему виджетов, такую как PyGtk или PyQt, вы должны серьезно рассмотреть это. Tkinter древний, и новые библиотеки имеют гораздо больше функциональности (читай: больше вещей, которые не нужно изобретать заново). Я использовал PyGtk, и он мне нравится намного больше, чем Tkinter, который я использовал в старые времена Python 1.x.
Тем не менее, в Tkinter вам нужно сделать следующее:
widget.wait_window(window)
Связывает цикл обработки событий, ожидая, когда пользователь закроет диалоговое окно.
Ссылка: http://www.pythonware.com/library/tkinter/introduction/dialog-windows.htm