복붙노트

[PYTHON] root.destroy ()와 root.quit ()의 차이점은 무엇입니까?

PYTHON

root.destroy ()와 root.quit ()의 차이점은 무엇입니까?

파이썬에서 tkinter를 사용할 때 루트 창을 닫을 때 root.destroy ()와 root.quit ()의 차이는 무엇입니까?

하나가 다른 것보다 선호됩니까? 다른 사람이 누릴 수없는 자원을 공개합니까?

해결법

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

    1."quit ()은 TCL 인터프리터를 멈추게합니다 .Tkinter-app가 멈추기 때문에 대부분의 경우 원하는 것입니다. 예를 들어 앱을 유휴 상태로 호출하면 문제가 될 수 있습니다. idle 자체는 Tkinker-app이며, 따라서 앱에서 quit ()을 호출하고 TCL 인터프리터가 종료되면 유휴도 종료되거나 혼란스러워집니다.

    "quit ()은 TCL 인터프리터를 멈추게합니다 .Tkinter-app가 멈추기 때문에 대부분의 경우 원하는 것입니다. 예를 들어 앱을 유휴 상태로 호출하면 문제가 될 수 있습니다. idle 자체는 Tkinker-app이며, 따라서 앱에서 quit ()을 호출하고 TCL 인터프리터가 종료되면 유휴도 종료되거나 혼란스러워집니다.

    destroy ()는 mainloop을 종료하고 모든 위젯을 삭제합니다. 따라서 다른 Tkinter 앱에서 앱을 호출하거나 여러 개의 메인 루프가있는 경우 더 안전하다고 생각됩니다. "

    http://www.daniweb.com/forums/thread66698.html에서 가져온 것

  2. ==============================

    2.root.quit ()은 mainloop을 종료합니다. 모든 위젯과 마찬가지로 인터프리터는 그대로입니다. 이 함수를 호출하면 root.mainloop () 호출 후 실행되는 코드를 가질 수 있으며 해당 코드는 위젯과 상호 작용할 수 있습니다 (예 : 입력 위젯에서 값 가져 오기).

    root.quit ()은 mainloop을 종료합니다. 모든 위젯과 마찬가지로 인터프리터는 그대로입니다. 이 함수를 호출하면 root.mainloop () 호출 후 실행되는 코드를 가질 수 있으며 해당 코드는 위젯과 상호 작용할 수 있습니다 (예 : 입력 위젯에서 값 가져 오기).

    root.destroy ()를 호출하면 모든 위젯이 삭제되고 mainloop이 종료됩니다. root.mainloop () 호출 후 모든 코드가 실행되지만 위젯이 더 이상 존재하지 않으므로 위젯에 액세스하려는 시도 (예 : 항목 위젯에서 값 가져 오기)가 실패합니다.

  3. from https://stackoverflow.com/questions/2307464/what-is-the-difference-between-root-destroy-and-root-quit by cc-by-sa and MIT license