Toplevel

Toplevel[5] - окно верхнего уровня. Обычно используется для создания многооконных программ, а также для диалоговых окон.

Методы виджета

Эти же методы могут быть использованы для корневого (root) окна.

Примеры

from tkinter import *
 
def setGeometry(win, winx, winy):#Функция выравнивает окно по центру
    x = (root.winfo_screenwidth() / 2 - winx / 2)
    y = (root.winfo_screenheight() / 2 - winy / 2)
    win.geometry("%dx%d+%d+%d" % (winx, winy, x, y))
 
def open_win():
    win = Toplevel()
    setGeometry(win, 200, 100)
    #Растянуть на все окно
    l = Label(win, text="Hello from top level", bg="#000000", fg="#fff").pack(expand=1, fill=BOTH)
    win.overrideredirect(1)#Убрать рамку
    win.grab_set() #Закрыть доступ родительскому окну
    win.after(3000, lambda: win.destroy())#Окно закроется через три секунды
 
root = Tk()
setGeometry(root, 400, 300)
Button(root, text="Open", command=open_win, padx=20, pady=5).place(relx=0.5, rely=0.5, anchor=CENTER)
 
root.mainloop()

from tkinter import *
def window_deleted():
    print('Окно закрыто')
    root.quit() # явное указание на выход из программы
root=Tk()
root.title(u'Пример приложения')
root.geometry('500x400+300+200') # ширина=500, высота=400, x=300, y=200
root.protocol('WM_DELETE_WINDOW', window_deleted) # обработчик закрытия окна
root.resizable(True, False) # размер окна может быть изменён только по горизонтали
root.mainloop()
Окно закрыто