Характеристики:
Python2.7.1
Tkinter (Tk версия 8.5)
Windows7
IDLE 2.7.1
Я пишу программу, которая «порождает» два окна,отзывает оба, уничтожает одно, а затем обескровливает другое (которое затем входит в основной цикл).
Это расположение мешает кнопке проверки в оставшемся окне.
например:
temp = Tk()
temp.withdraw()
root = Tk()
root.withdraw()
temp.destroy()
root.mainloop()
(Это кажется необычным, но оно настроено таким образом, чтобы в окне «temp» отображались проблемы, возникшие при создании корневого окна).
Однако, похоже, что сразуПрограмма работает с двумя окнами Tkinter, функциональность Checkbutton (в корне) выходит из окна.
def ClickAButton():
print Toggle.get()
Toggle = IntVar()
Checkbutton(root, text = "Me is broke", variable = Toggle).pack()
ClickAButton
Toggle.get () должен возвращать 1, если Checkbutton отмечен, иначе 0.
Однако после добавления нового окна Toggle.get всегда возвращает 0.
(я пытался переформатировать код {это вызывает странные ошибки его собственного},
переименование переменных и т. Д.
Checkbutton работает просто отлично без тОкно «temp».
Окно «temp» разрушается до того, как кнопка «Check» была назначена, упакована,
или «root» даже входит в основной цикл!)
Весь, например:
temp = Tk()
temp.withdraw()
root = Tk()
root.withdraw()
if 'certain condition':
root.destroy()
temp.deiconify()
temp.mainloop()
else:
temp.destroy()
Toggle = IntVar()
Checkbutton(root, text = "Why I only return 0?", variable = Toggle).pack()
root.deiconify()
root.mainloop()
По какой-то причине
Checkbutton всегда возвращает 0, даже если проверено.
Я подозреваю, что это многопоточность с Tkinter.
Есть что-нибудьвообще я могу сделать здесь?
(Фактическое кодирование ОГРОМНО.Я не хочу переключать все это на другой модуль с графическим интерфейсом): |
С благодарностью!
(Я только начал программировать в начале этого года.
Пожалуйста, прости меня, если ясовершил чудовищную ошибку!)