Работа с несколькими окнами в Tkinter?Python

Программы на Python
Anonymous
Работа с несколькими окнами в Tkinter?

Сообщение Anonymous »

Пожалуйста, помогите решить проблему в моем коде Tkinter…
Постановка проблемы:

У меня простая страница входа в tkinter который содержит кнопку входа в систему. Нажав эту кнопку, я хочу закрыть эту страницу входа в систему и хочу открыть (или запустить) новый файл Python, который отображает основной графический интерфейс проекта (который содержит множество кнопок виджетов tkinter, текстовых полей, меток и т. д.). Кроме того, в этом главном графическом интерфейсе у меня есть кнопка «Вернуться к окну входа в систему». Когда я нажимаю эту кнопку, я хочу закрыть эту главную страницу графического интерфейса и снова отобразить страницу входа в систему. До этого этапа мой код делает то, что я хочу (код работает так, как я хочу).
НО, после этого, когда я снова, нажмите кнопку входа в систему, чтобы закрыть его и открыть основной графический интерфейс, но не успешно… моя главная страница графического интерфейса закрывается, но главная страница графического интерфейса больше не открывается… почему так? пожалуйста, помогите мне.
(1) Я создал небольшой проект с двумя файлами Python с именами MultiWindowsLogIn.py, а другой — mainGUI.py.
(2) Код MultiWindowsLogIn.py выглядит следующим образом:

Код: Выделить всё

`from tkinter import *

Код: Выделить всё

def login():
logInWindow.quit()
logInWindow.destroy()
import mainGUI

Код: Выделить всё

logInWindow = Tk()
logInWindow.title(“Login Window Title”)
logInWindow.geometry(‘600x400’)

Код: Выделить всё

logInButton = Button(logInWindow, text=“Login”, width=15, font=(‘times new roman’, 15, ‘bold’), bd=2, command=login)logInButton.place(x=200,y=250)

Код: Выделить всё

logInWindow.mainloop()
(3) Код mainGUI.py выглядит так:

Код: Выделить всё

`from tkinter import *

Код: Выделить всё

def backToLoginPage():
guiWindow.quit()
guiWindow.destroy()
import MultiWindowsLogIn

Код: Выделить всё

guiWindow = Tk()
guiWindow.title(“Student Registration System”)
guiWindow.geometry(‘500x200+0+0’)

Код: Выделить всё

backButton = Button(guiWindow, text=“Back to Login Window”, font=(‘times new roman’, 15, ‘bold’), bd=3, command=backToLoginPage)backButton.place(x=150, y=100)

Код: Выделить всё

guiWindow.mainloop()`
Пожалуйста, помогите мне решить проблему. Если есть другой способ добиться желаемого результата, дайте мне знать… Спасибо

Подробнее здесь: https://stackoverflow.com/questions/784 ... in-tkinter

Вернуться в «Python»