[pygtk] Scrolling to the previous position in a TreeView
Neil Dugan
pygtk at butterflystitches.com.au
Fri Jan 30 09:07:23 WST 2009
Lionel Dricot wrote:
> Hello,
>
> I'm displaying a treeview in my application and I update the content by
> creating a new treestore and then, once the treestore is create, I replace
> the old one with set_model.
>
> Unfortunatly, the scroll position is not preserved and, at each refresh, the
> scroll go back to the top of the page.
>
> I thought that it would be as simple as :
>
> vadjust = self.treeview.get_vadjustment()
> ...
> refresh
> ...
> self.treeview.set_adjustement(vadjust)
>
> But it doesn't work at all.
>
> I've tried to set the value of vadjust, it has no effect.
>
> What is strange is that if at any point I do a
> self.treeview.get_vadjustment().get_value(), I have the good value for the
> scrolling ! So the adjustment is good.
>
> But then, why does my tree scroll to the top at each refresh ?
>
> Can anybody help me ? How do you do when you want to keep a scrolled
> position ?
>
> Thanks,
>
> Lionel
>
>
Sometimes I find that a small delay helps.
# untested code
gobject.timeout_add(100,
self.treeview.get_vadjustment().set_value(old_value))
The users wont notice a 1/10 second delay.
Regards Neil.
More information about the pygtk
mailing list