Всем привет.
Есть программа (уже писал в соседних тредах, но выведу в новый тред, так как новый вопрос ближе к tkinter всё-таки). Чат клиент-серверный. Хочу написать GUI к клиенту. (желательно использовать именно tkinter, но если так и не разберусь, плюну и буду пытаться освоить pyqt4). Ну да не в тему.
В общем, хочу, чтобы самое первое окно при запуске программы спрашивало адрес сервера + порт сервера - с единственной кнопочкой connect. После нажатия на которую (в случае успешного соединения, ошибку разберусь как лучше обработать) - старое окно как бы удалялось, и замещалось новым - где уже требовалось бы ввести login/password. После авторизации надо чтобы второе окно тоже пропадало - и уже появлялось окно собственно чата (список комнат), и уже оно становилось бы главным.
Как такое реализовать (и можно ли)? Мне нужен TopLevel() или что-то другое?
Главное окно создаю примерно так:
root = tkinter.Tk()
root.title('blah-blah-blah')
# много кода для всяких виджетов + обработка нажатия на кнопку
# в качестве родителя указываю root
root.mainloop()
Собственно метод нажатия на кнопку (частично)
newroot = tkinter.TopLevel()
#опять куча виджетов, теперь у них родитель newroot
Собственно, создаётся новое окно, а старое не убирается... и старое остаётся главным (если закрыть первое, закроется и второе). Сделать второе главным? (а после успешного логина сделать третьё)?..