복붙노트

[PYTHON] 파이썬 time.sleep

PYTHON

파이썬 time.sleep

나는 5 초를 기다린 후에 텍스트 상자 안의 텍스트를 삭제하려하지만, 대신 프로그램을 실행시키지 않고 다른 모든 것보다 잘 수 있습니다. 또한 텍스트가 잠겨있는 동안 다른 코드를 실행할 수 있도록 텍스트 상자가 잠자기 상태가되도록하는 방법이 있습니까?

from time import time, sleep
from Tkinter import *

def empty_textbox():
    textbox.insert(END, 'This is a test')
    sleep(5)
    textbox.delete("1.0", END)

root = Tk()

frame = Frame(root, width=300, height=100)
textbox = Text(frame)

frame.pack_propagate(0)
frame.pack()
textbox.pack()

empty_textbox()

root.mainloop()

해결법

  1. ==============================

    1.당신은 정말로 time.sleep (...)보다는 Tkinter와 비슷한 것을 사용해야합니다.

    당신은 정말로 time.sleep (...)보다는 Tkinter와 비슷한 것을 사용해야합니다.

    이 다른 stackoverflow 질문에서 after 메서드를 사용하는 예제가 있습니다.

    after 메소드를 사용하는 스크립트의 수정 된 버전은 다음과 같습니다.

    from time import time, sleep
    from Tkinter import *
    
    def empty_textbox():
        textbox.delete("1.0", END)
    
    root = Tk()
    
    frame = Frame(root, width=300, height=100)
    textbox = Text(frame)
    
    frame.pack_propagate(0)
    frame.pack()
    textbox.pack()
    
    textbox.insert(END, 'This is a test')
    textbox.after(5000, empty_textbox)
    
    root.mainloop()
    
  2. from https://stackoverflow.com/questions/10393886/python-time-sleep by cc-by-sa and MIT license