Tkinter의 이벤트 루프 내에 사용자 정의 코드를 통합하는 것은 어려울 수 있습니다. 이 경우, 초보 프로그래머는 Tkinter가 이벤트 루프를 지배하여 새 무리 시뮬레이션이 지속적으로 실행되는 것을 방지하는 문제에 직면하고 있습니다.
이 문제를 해결하기 위해 Tk 객체는 강력한 메서드인 after를 제공합니다. 이 메서드의 구문은 다음과 같습니다.
def after(self, ms, func=None, *args): """Call function once after given time. MS specifies the time in milliseconds. FUNC gives the function which shall be called. Additional parameters are given as parameters to the function call. Return identifier to cancel scheduling with after_cancel."""
after를 활용하면 지정된 시간 간격 후에 함수가 실행되도록 예약할 수 있습니다. 예는 다음과 같습니다.
from tkinter import * root = Tk() def task(): print("hello") root.after(2000, task) # reschedule event in 2 seconds root.after(2000, task) root.mainloop()
이 예에서 작업 기능은 Tkinter 이벤트 루프 내에서 2초마다 실행되도록 예약되어 있습니다. 메인 루프 기능은 예약된 작업이 실행되는 동안 Tkinter가 이벤트를 계속 처리하도록 보장합니다.
이 솔루션은 Tkinter의 이벤트 루프와 함께 외부 코드를 실행할 수 있는 안정적이고 간단한 방법을 제공하여 복잡한 멀티스레딩 개념이 필요하지 않으며 해킹을 방지합니다. "버튼을 누르고 있는" 방법.
위 내용은 Tkinter의 이벤트 루프와 동시에 외부 코드를 어떻게 실행할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!