Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在使用 PyGTK 在 Python 中编写一个计时器程序。精确到百分之一。现在,我正在使用不断更新的标签。这是一个问题,因为如果我在计时器运行时调整窗口大小,Pango 经常会抛出一些疯狂的错误并且我的程序终止。这并不总是相同的错误,但我认为不同的错误是某种形式的失败绘制。此外,随着字体大小的增加,标签的更新速度越来越慢。
所以,我想知道是否有更正确的方法来显示计时器。有比不断更新标签更稳定的方法吗?
更新标签应该可以完全可靠地工作,所以我怀疑你做错了什么。你在使用线程吗?你的代码是什么样的?你能把你的程序压缩到多小(通过删除功能,而不是通过混淆代码),而不会使问题消失?
我解决了这个问题。这确实是线程的问题。我自己永远也猜不到。诀窍是使用 gobject.timeout_add() 创建计时器而不是线程循环。以下是有关 gobject.timeout_add() 的一些信息:
http://faq.pygtk.org/index.py?req=show&file=faq01.021.htp
不要忘记让你的函数返回 True,否则计时器将停止。