首先,我是編程語言世界的新手,當然對Python來說也是新手。Pygtk + Glade自刷新標籤
在我的工作中,我們使用的是Linux系統。有時我需要檢查終端上的一些命令和腳本輸出。所以,我想用一個非常基本的GUI編寫一個小應用程序,並選擇Python和Pygtk與Glade。不幸的是,我們的Linux發行版並不是最新的,我只能使用Python 2.4.3和Glade 2.12.1。我知道那些太舊了,但我必須使用它們。
在學習Python和Pygyk之前,我藉助大量的教程學習了一些基本的GUI,例如,當我點擊一個按鈕時,它會收集一些系統信息並將它們寫入標籤。等等。我爲不同的目的創建不同的按鈕。這很好,但不是很有用。正如你猜測的那樣,我希望這些標籤在一段時間內自動刷新(即每十分鐘)。我在網上搜索並找到Timer類。另外,我遇到線程問題。但我不能將這些應用到我的簡單代碼,因爲我是一個noob。這裏是我的代碼:
#!/usr/bin/env python
import os
import ...
class MyProject:
def __init__(self):
self.gladefile = "myproject.glade"
self.wTree = gtk.glade.XML(self.gladefile)
dic = { "on_window1_destroy" : gtk.main_quit,
"on_sis_button.clicked" : self.sis_button_clicked,
"on_...... }
self.wTree.signal_autoconnect(dic)
def sis_button_clicked(self, widget):
sislbl = self.wTree.get_widget("sis_label1")
def ......
if __name__ == "__main__":
frm = MyProject()
gtk.main()
現在,我該如何將自動刷新或類似的東西應用到我的代碼。我是否必須爲每個標籤應用標籤,還是可以在全球範圍內使用?我是否正確,還是應該完全改變我的代碼概念?
謝謝。
注意:如果您指向我,我可以閱讀手冊。直接代碼建議會讓我如此高興。
非常感謝。這正是我所期待的。即使我對編程和Python太新了,我可以很容易地將它應用到我的代碼中,並且它像魅力一樣工作。只是一個小記錄,因爲我的Gobject版本太舊了,我不能直接使用gobject.timeout_add_seconds,而是使用gobject.timeout_add。 – XunilXunil