Python Can';t滚动到TreeView PyGTK/GTK的末尾

Python Can';t滚动到TreeView PyGTK/GTK的末尾,python,pygtk,gtk,gtk2,Python,Pygtk,Gtk,Gtk2,当我尝试向下滚动到TreeView的末尾时,它在一个滚动窗口内,它不会滚动到应该滚动的地方,而是在前面滚动一两行 我尝试了几种方法,它们都提供了相同的行为: self.wTree.get_widget("tree_last_log").scroll_to_cell((self.number_results-1,)) # or self.wTree.get_widget("tree_last_log").set_cursor((self.number_results-1,)) # or adj

当我尝试向下滚动到TreeView的末尾时,它在一个滚动窗口内,它不会滚动到应该滚动的地方,而是在前面滚动一两行

我尝试了几种方法,它们都提供了相同的行为:

self.wTree.get_widget("tree_last_log").scroll_to_cell((self.number_results-1,))
# or 
self.wTree.get_widget("tree_last_log").set_cursor((self.number_results-1,))
# or 
adj = self.wTree.get_widget("scrolledwindow1").get_vadjustment()
adj.set_value(adj.get_property('upper'))
self.wTree.get_widget("scrolledwindow1").set_vadjustment(adj)
# or 
self.wTree.get_widget("scrolledwindow1").emit('scroll-child', gtk.SCROLL_END, False)

问题出在哪里?

C API文档可能会有帮助:

你可以看到有一些参数会把事情搞砸,这取决于pygtk默认设置的方式。您可以尝试显式指定所有参数

TreeView和TextView的一个技巧是,它们进行异步布局,因此如果尚未计算行高度,调整的“上限”很可能为零

如果干扰了调整,没有必要让它倒退,尽管这应该是无害的


“scroll child”信号不是您想要的,它是用于将键绑定到的键绑定信号。

C API文档可能会有所帮助:

你可以看到有一些参数会把事情搞砸,这取决于pygtk默认设置的方式。您可以尝试显式指定所有参数

TreeView和TextView的一个技巧是,它们进行异步布局,因此如果尚未计算行高度,调整的“上限”很可能为零

如果干扰了调整,没有必要让它倒退,尽管这应该是无害的

“scroll child”信号不是您想要的,它是用于将键绑定到的键绑定信号