Почему функция времени и print () выполняются до создания метки в окне Tkinter - PullRequest
1 голос
/ 28 мая 2020
def createLabel():
    l = label(text='Label Created')
    l.grid(row=10, column=3)
    time.sleep(5)
    print('Label Created')

b = Button(text='Click to create a label', command=createLabel)

Вывод: Через 5 секунд напечатано: Этикетка создана Затем появляется этикетка

** Как сделать так, чтобы этикетка сначала появлялась в окне, а затем print () "Сообщение о создании этикетки"

Пожалуйста, помогите мне с этим .. **

1 Ответ

1 голос
/ 28 мая 2020

Просто используйте after(ms, func, *args). Вот пример вашего дела.

from tkinter import *
import tkinter as tk


def createLabel():
    l = Label(text='Label Created')
    l.pack(side=BOTTOM)
    b.after(5000, print, 'Label created')


root = tk.Tk()
b = Button(root,text='Click to create a label', command=createLabel)
b.pack(side=TOP)
root.mainloop()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...