Если вы хотите открыть определенное количество окон, подумайте о том, чтобы сохранить эти окна в списке, а затем, используя index()
, вы можете вытолкнуть их из списка существующих.
См. Пример ниже идайте мне знать, если у вас есть вопросы:
import tkinter as tk
class App(tk.Tk):
def __init__(self):
super().__init__()
self.geometry('200x50')
self.top_windows = []
tk.Button(self, text='Open window!', command=self.open_top).pack()
def open_top(self):
if len(self.top_windows) <= 5:
top = tk.Toplevel(self)
self.top_windows.append(top)
tk.Button(self.top_windows[-1], text='exit',
command=lambda top=top: (self.top_windows.pop(self.top_windows.index(top)), top.destroy())).pack()
App().mainloop()