파이썬 tkinter 순차적으로 실행하는 방법을 알고 싶습니다.

조회수 2184회

after 함수를 순차적으로 실행하고 싶습니다. 예를들어

root.after(10, A)
root.after(10, B)

이렇게 있다면,

10ms뒤 A가 실행되고 A가 실행되면 10ms뒤에 B가 실행되도록 하고싶은데 검색해도 안나오는것 같네요..

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • threading의 타이머 함수를 사용하면 될 것 같은데요.. 간단하게 아래와 같은 도식이 가능할 것 같습니다. threading.Timer에서 콜백으로 다른 함수를 호출할 때, 함수 입력값을 아래와 같이 넣어야 한다는 점을 주의하시면 좋을 것 같습니다.

    import threading
    
    def b_function():
        print("This is B")
    
    def a_function(time):
        print("This is A")
        threading.Timer(time, b_function).start()
    
    def genesis_function(time):
        threading.Timer(time, a_function, [time]).start()
    
    genesis_function(10)
    
    #10초후 
    This is A.
    #10초후
    This is B.
    
    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)