2010-10-22 30 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

相关问题