pygtk를 사용하여 지속적으로 업데이트하는 타이머를 어떻게 표시해야합니까?

StackOverflow https://stackoverflow.com/questions/2259386

  •  20-09-2019
  •  | 
  •  

문제

Pygtk를 사용하여 Python에서 타이머 프로그램을 작성하고 있습니다. 백분의 장소에 정확합니다. 지금은 끊임없이 업데이트 된 레이블을 사용하고 있습니다. 타이머가 실행되는 동안 창을 크기를 조정하면 Pango가 미친 오류를 던지지 않고 내 프로그램이 종료되기 때문에 이것은 문제입니다. 항상 같은 오류는 아니지만 내가 생각하는 다른 오류는 어떤 형태의 실패 추첨이라고 생각합니다. 또한 글꼴 크기를 늘리면 라벨이 느리고 느려집니다.

따라서 타이머를 표시하는 더 정확한 방법이 있는지 궁금합니다. 라벨을 지속적으로 업데이트하는 것보다 더 안정적인 방법이 있습니까?

도움이 되었습니까?

해결책 2

나는 문제를 알아 냈다. 실제로 스레드에 문제가있었습니다. 나는 결코 그것을 추측하지 않았을 것입니다. 트릭은 gobject.timeout_add ()를 사용하여 나사산 루프 대신 타이머를 만드는 것입니다. 다음은 gobject.timeout_add ()에 대한 정보입니다.

http://faq.pygtk.org/index.py?req=show&file=faq01.021.htp

기능이 True를 반환하는 것을 잊지 마십시오. 그렇지 않으면 타이머가 중지됩니다.

다른 팁

레이블을 업데이트하는 것은 완벽하게 안정적으로 작동해야하므로 다른 잘못을하고있는 것으로 생각됩니다. 스레드를 사용하고 있습니까? 코드는 어떻게 생겼습니까? 문제를 해결하지 않고 (코드를 난독하게하는 것이 아니라 기능을 제거함으로써) 프로그램을 얼마나 작게 할 수 있습니까?

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top