Программа
A Python l oop вызывает функцию tkinter для создания окна GUI. В идеале каждое окно должно быть уничтожено до того, как управление переходит из функции tkinter обратно в основную последовательность Python, чтобы на следующем проходе l oop можно было создать новое окно на чистом экране. Вместо этого происходит то, что все созданные windows остаются на экране до тех пор, пока не закончится Python l oop, и тогда все windows будут уничтожены. Есть ли способ управлять событием l oop, чтобы заставить каждое окно быть уничтоженным до возврата из функции tkinter? (Я знаю, что одним из способов скрыть проблему было бы определение точного местоположения x, y windows, чтобы каждое последующее окно покрывало свои предшественники, но это было бы просто косметическим исправлением c. I хочу знать, как исправить основную проблему.) Python 3.5, macOS
import os
from tkinter import *
from tkinter.ttk import *
def display(text):
alert = Tk()
alert.geometry('370x200')
var = StringVar()
var.set(text)
message = Label(alert, textvariable = var, font=('arial',20)).pack(pady=20)
okButton = Button(alert, text = 'OK', command = alert.destroy).place(x=225,y=100)
alert.mainloop()
days = [ 'Mon', 'Tue', 'Wed' ]
for day in days:
message = "Today is " + day
display(message)