Один из способов - просто использовать tkwait window $yourwindow
, чтобы дождаться, пока пользователь закроет окно.Само окно, вероятно, должно использовать некоторую переменную, переданную ему клиентским кодом, для управления пользовательским вводом.Например, если вам нужно, чтобы пользователь ввел имя базы данных, используйте виджет entry
и свяжите его с переменной, используя опцию -textvariable
.После того как окно закрыто и tkwait
в коде клиента возвращается, прочитайте значение этой переменной.
Другой подход состоит в том, чтобы не использовать модальные окна и не превращаться в управляемый событиями поток управления.То есть, сделайте свое окно запроса, чтобы получить имя процедуры, которая должна быть вызвана, когда пользователь принимает свой ввод (и этот ввод подтвержден), и выполнять любую дальнейшую обработку там вместо публикации окна и ожидания, пока пользователь не обработает его.
Соответствующие справочные страницы: tkwait и options (для -textvariable
).