2009-09-11 69 views
2

我剛開始用pyGTK學習Glade。由於Glade生成的是XML文件而不是實際的Python代碼,是否有一種很好的方式來使用Glade啓動項目,然後手動編寫更多代碼或對其進行調整?修改GUI以Glade開頭

有沒有時間或理由可以選擇手動代碼而不是從空地開始?

回答

4

使用glade創建的GUI可以通過兩種方式在代碼中訪問:libglade或gtkbuilder。我不能評論這兩者之間的差異,除了gtkbuilder更新, google上有很多頁面展示瞭如何從libglade遷移到gtkbuilder。

使用gtkbuilder,您可以使用gtkbuilder從XML文件中檢索GUI對象來創建GUI對象。這將創建具有您在glade中設置的所有設置的對象。您現在有一個GUI對象,您可以通過它的常規界面進行操作。

builder = gtk.Builder() 
builder.add_from_file(glade_path) 
builder.connect_signals(self) 

main_window = builder.get_object("main_window") 
main_window.show() 

text_box1 = builder.get_object("textbox1") 
text_box1.set_text("enter your name") 

第3行顯示了從glade加載時如何連接信號處理程序。本質上,它會查找您爲glade界面中的信號指定的功能並將其附加到它上面;如果未提供該功能,則會在命令行上看到警告。

+0

謝謝。這非常有幫助。 – TimothyAWiseman 2009-09-19 14:52:15

2

你對glade和pygtk瞭解多少? Glade創建xml文件,但是您可以使用gtk.Builder在python中加載這些文件。你可以很容易地調整你用python中的glade創建的小部件。閱讀這些tutorials以瞭解如何更好地做到這一點。你只需要瞭解更多關於pygtk和glade的知識,這很明顯。

+0

我目前知道的很少,兩天前我開始和他們一起玩。我已經開始閱讀教程,並且我很樂意製作幾個簡單的guis,但是因爲它剛剛將guis放在了以前的命令行程序中,所以它們並不複雜。 感謝您的鏈接。 – TimothyAWiseman 2009-09-12 21:05:09