3
我可以捕获什么信号以检测列在gtk.TreeView
中更改大小的时间?我似乎无法在文档中找到它。检测gtk.treeview中的列是否调整大小
我可以捕获什么信号以检测列在gtk.TreeView
中更改大小的时间?我似乎无法在文档中找到它。检测gtk.treeview中的列是否调整大小
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"信号代替。
请参阅[我的答案在这里](http://stackoverflow.com/questions/3992602/add-gtk-treeview-columns-to-a-size-group/3999457#3999457)为hax方式使用size-分配给列...但我喜欢这种方式更好=) – Claudiu 2010-10-22 17:43:41
不错,它的工作原理。感谢您的链接,不会想出它们。也改变通知似乎很有用 – Claudiu 2010-10-22 17:53:09
@Claudiu:PyGTK是一个很好的API,但你真的需要参考手册来更好地了解它。我建议你下载它,这样你就可以快速查找 - 这实际上帮了我很多。文档包含在[PyGTK sources](http://ftp.gnome.org/pub/GNOME/sources/pygtk/)中。 – AndiDog 2010-10-22 17:59:22