2010-10-22 48 views

回答

6

gtk.TreeViewColumn s不是小部件,所以他們很遺憾沒有專門的信號來改變尺寸。但可以註冊接收「寬度」 change notifications的回調函數:

def onColWidthChange(col, width): 
    # Note that "width" is a GParamInt object, not an integer 
    ... 

col.connect("notify::width", onColWidthChange) 

在該示例中,col必須是gtk.TreeViewColumn對象。如果您沒有初始化代碼中的列,則可以使用gtk.TreeView.get_column來獲取這些對象。

如果您只需在樹形視圖更改大小時收到通知,則可以使用其"size-allocate"信號代替。

+0

請參閱[我的答案在這裏](http://stackoverflow.com/questions/3992602/add-gtk-treeview-columns-to-a-size-group/3999457#3999457)爲hax方式使用size-分配給列...但我喜歡這種方式更好=) – Claudiu 2010-10-22 17:43:41

+0

不錯,它的工作原理。感謝您的鏈接,不會想出它們。也改變通知似乎很有用 – Claudiu 2010-10-22 17:53:09

+0

@Claudiu:PyGTK是一個很好的API,但你真的需要參考手冊來更好地瞭解它。我建議你下載它,這樣你就可以快速查找 - 這實際上幫了我很多。文檔包含在[PyGTK sources](http://ftp.gnome.org/pub/GNOME/sources/pygtk/)中。 – AndiDog 2010-10-22 17:59:22

相關問題