사용자는 제한된 시간 동안 문제를 해결할 수 있습니다. 프로그램에서 GUI (tkinter) 타이머와 동시에 음악 파일을 실행하고 시간이 다되면 둘 다 끝냅니다. 일부 사용자는 초기에 완료 할 수 있습니다. 나는 그들이 타이머 창을 닫을 때 음악을 멈추게하고 싶다. 'winsound'는 'stop()'을 허용하지 않으며 'winsound.SND_PURGE'는 성공하지 못했습니다. 이것은 내가 생각했던 것보다 더 복잡합니다. 나는 이것을 시도했다 :음악 파일을 HALT (파이썬 3) 하시겠습니까?
# python 3.5
winsound.PlaySound('The Countdown.wav', winsound.SND_FILENAME)
root = Tk() # IMAGINE this is a box with a number ticking down
root.mainloop()
root.protocol("WM_DELETE_WINDOW", winsound.SND_PURGE) # nothing happens :(
플래그를 사용하는 방법이 있습니까? 아마도 대체 오디오 파일 플레이어일까요? 아무것도?
알려 주시면 알려드립니다. 감사!
일단 창을 닫으면 오류가 발생합니다. 'wm "명령을 호출 할 수 없습니다 : 애플리케이션이 파괴되었습니다.' 그 주위에 방법이 있습니까? –
불량 : 메인 루프를 먼저 끼 웁니다. 하지만 지금은 또 다른 문제가 있습니다. 십자가를 클릭하여 창을 닫으면 소리가 멈 춥니 다. 그러나 창문은 열려 있습니다. 'root.protocol'안에 'root.destroy'를 추가하면 'wm_protocol()에 1에서 3까지의 인수가 있지만 4가 주어진다'라는 오류가 있습니다. –
닫기 상자를 클릭 할 때 둘 이상의 작업을 수행해야하는 경우, 모든 작업을 수행하는 함수를 작성해야합니다 (람다는 더 이상 충분하지 않습니다). 그리고이를 "wm_protocol"으로 전달해야합니다. – jasonharper