У меня есть главное окно tkinter с кнопкой, которая запускает большую функцию1. В то же время у Function1 есть собственная всплывающая часть окна:
...
def function1:
...
root2 = tk.Toplevel(root) ## root is the major tkinter object
tree = ttk.Treeview(root2)
btn = ttk.Button(root2)
def start_download():
global curItem ## variable that going to be used in function1 in the future
curItem = tree.item(tree.focus()) ## selected part of tree is going to be our value
root2.destroy
btn.configure(command = start_download)
tree.pack
#### here is goint to be other calculations using curItem but the problem is that they are starting at the same time when this little tree+button widget popping.
Как вы можете видеть после того, как функция start_download () получает некоторое значение, пользователь нажимает кнопку и уничтожает root2. Но проблема в том, что я не понимаю, как приостановить следующие команды, пока root2 не будет детрой. Потому что эти команды вызывают ошибку, потому что curItem недоступен, пока пользователь не нажмет кнопку
У этого фрагмента есть некоторые проблемы, потому что я пропускаю некоторые части кода, так что пока это не настоящий код, но на самом деле он состоит из базовых c идея. Любые предложения о том, как избежать этой ситуации. Я уже пытался сделать какую-то часть "While curItem == '': pause", но это не дало мне никаких результатов.