Как я могу изменить windows с Tkinter - PullRequest
0 голосов
/ 28 февраля 2020

Я пробовал гуглить, и все, кажется, структурировали свой код совершенно по-разному. Я понимаю базовый уровень tkinter, однако я не понимаю, как люди используют классы и определения для обмена страницами. Как я могу поменять главное окно на второе? (и не открывать второй после закрытия основного)

import tkinter as tk
main = tk.Tk()
main.title("Main Program")
firstlabel = tk.Label(main, text="This is a program!")
firstlabel.pack()
main.mainloop()
second = tk.Tk()
second.title("Second Program")
firstlabel = tk.Label(second, text="This is another program!")
firstlabel.pack()
second.mainloop()

Ответы [ 2 ]

0 голосов
/ 28 февраля 2020

Один из способов сделать это - очистить все (каждый виджет) с помощью этой функции:

def clear(app):
    # Delete everything else in app
    widget_list = app.winfo_children()
    for item in widget_list:
        if item.winfo_children():
            widget_list.extend(item.winfo_children())
    for item in widget_list:
        item.pack_forget()

И затем поместить в новое окно, к которому вы хотите поменяться (каждое окно должно иметь свой собственный кадр, чтобы сделать проще).

0 голосов
/ 28 февраля 2020

Попробуйте это ::::

tk.Toplevel (main)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...