Найти - Пользователи
Полная версия: Tkinter: Запуск второго окна из первого
Начало » GUI » Tkinter: Запуск второго окна из первого
1
Cover Story
Всем доброго!
Есть код:
# -*- coding: utf-8 -*-
import sys
import Tkinter

def sss():
if v.get() == "111":
kk.set("Пароль верный!")
else:
kk.set("Пароль неверный!")
# print v.get()

tuppass = Tkinter.Tk()
tuppass.title('Доступ к flash\'ке')

#tuppass.geometry("250x150")
F = Tkinter.Frame(tuppass)
F.pack()

#Заголовок программы
lab = Tkinter.Label(F, text='Введите пароль!')
lab.grid(row=0, column=0, columnspan = 2)

lab = Tkinter.Label(F, text=' ')
lab.grid(row=1, column=0, columnspan = 2)


# Строка ввода пароля
v = Tkinter.StringVar()
#v.set()
password = Tkinter.Entry(F, width=10, textvariable = v, show="*")
password.grid(row=2, column=0)

# кнопка ввода пароля
btpass = Tkinter.Button(F, text = u'Подтвердить', command = sss)
btpass.grid(row=2, column=1)

kk = Tkinter.StringVar()
lab = Tkinter.Label(F, text=' ', textvariable = kk)
lab.grid(row=3, column=0, columnspan = 2)


# Кнопка Выхода из проги
btclose = Tkinter.Button(F, text = u'Закрыть', command = lambda : tuppass.destroy())
btclose.grid(row=4, column=1, sticky='e')

tuppass.mainloop()
Как в данном коде запустить окно в котором будет работать пользователь после правильно набранного пароля, а окно с вводом пароля закрыть.
igor.kaist
Сейчас тоже над этим работаю.
Первы вариант был, сделать old_window.destroy() а затем новый new_window=Tk() new_window.mainloop()
Но вроде как этого делать нежелательно. Работает, но в последствии, у меня вылезали некоторые глюки.
Второй вариант, на котором остановился:
Все, что нужно в первом окне, упаковываеш во Frame, далее делаешь этому фрейму destroy и создаешь новый, для красоты, можно в это время делать iconify deiconify
Cover Story
igor.kaist Спасибо огромное Frame.destroy() действительно рулит! Вопрос решен!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB