如何在pygtk小部件顯示5秒後運行函數?顯示pygtk小部件5秒後運行函數
11
A
回答
14
您可以使用glib.timeout_add(interval, callback, ...)定期調用一個函數。
如果函數返回真那麼它將在間隔後再次被調用;如果函數返回False那麼它將不會再被調用。
這裏是後加上超時的簡單例子Widget的顯示事件:
import pygtk
pygtk.require('2.0')
import gtk
import glib
def timer_cb():
print "5 seconds elapsed."
return False
def show_cb(widget, data=None):
glib.timeout_add(5000, timer_cb)
def destroy_cb(widget, data=None):
gtk.main_quit()
def main():
window = gtk.Window(gtk.WINDOW_TOPLEVEL)
window.connect("show", show_cb)
window.connect("destroy", destroy_cb)
window.show()
gtk.main()
if __name__ == "__main__":
main()
9
如果時間不是關鍵是精確到十分之一秒,使用
glib.timeout_add_seconds(5, ..)
其他如上。
timeout_add_seconds允許系統對準超時其他事件,從長遠來看,減少CPU喚醒(尤其是如果超時reocurring)和save energy for the planet(!)
相關問題
- 1. 5秒後停止Javascript函數/設置。5秒鐘後的Blur()
- 2. tkinter - 顯示幀後運行函數
- 3. pygtk i18n問題--- pygtk內置小部件
- 4. jQuery顯示5秒然後隱藏
- 5. Facebook FBJS - 5秒後顯示內容
- 6. 5秒後顯示對話框
- 7. JavaScript函數運行1秒後清除?
- 8. 如何顯示數字時鐘小部件的秒數?
- 9. pygtk自定義小部件顯示在單獨的窗口
- 10. 在調整大小後運行jQuery函數5次
- 11. 顯示消息5秒
- 12. 顯示圖片每5秒
- 13. 每x秒運行函數
- 14. 安裝後未顯示小部件
- 15. 顯示1秒後
- 16. AngularJs表顯示頂部5行和底部5行?
- 17. HealthKit訪問後訪問ViewController,但5秒後顯示元素
- 18. 顯示小數點後三位的秒數。 - java
- 19. 移動到後臺後保持調度隊列運行5秒
- 20. iOS 8運行項目時未顯示今日小部件
- 21. Shell腳本運行命令每5秒x秒數
- 22. PyGTK小部件的就地替換
- 23. TreeViewColumn標題中的PyGTK Entry小部件
- 24. 什麼是「小部件」做的PyGTK
- 25. PyGTK:在小部件上添加文本
- 26. 在pygtk中調整窗口小部件
- 27. PyGTK更新兄弟小部件標籤
- 28. 顯示安裝後如何顯示小部件的說明
- 29. ContextMenu顯示小於1秒
- 30. 如何顯示任意數字到小數點後5位
+1,因爲你實際上已經增加了一個鏈接到官方文件。人們應該更頻繁地這樣做。 – 2011-07-21 05:39:07