我有一个treeview-widget放在一个ScrolledWindow
中,在运行时填充数据。我希望ScrolledWindow
自动滚动到列表的结尾。我通过调整每次向treeview中插入一行时vadjustment
的值来“解决”了这个问题,例如:
if new_line_in_row:
adj = self.scrolled_window.get_vadjustment()
adj.set_value( adj.upper - adj.page_size )
如果我在交互式的ipython会话中运行代码并自己设置值,一切都按预期工作。如果我使用默认的Python解释器运行代码,则自动滚动不总是起作用。我调试了代码,问题似乎是调整值具有某种“延迟”,并且只有在一段时间后才会更改。
我的问题是:如何可靠地滚动到
ScrolledWindow
的最大位置?是否会生成特殊信号供我使用?还是有更好的方法来设置adjustment-value
?