我正在开发GTK应用程序(在带有PyGTK的Python中),我需要手动滚动Gtk.ScrolledWindow到它包含的子项以在屏幕上显示它。
ScrolledWindow包含一个ListBox,其中包含很多ListBoxRow。
self.currencySwitcher = CurrencySwitcher(self)
self.currencySwitcherBox = Gtk.ScrolledWindow(vexpand = True)
self.currencySwitcherBox.add(self.currencySwitcher)
class CurrencySwitcher (Gtk.ListBox):
# ...
我有一个搜索系统,可以在此列表框中找到特定的行,但是当我单击搜索某行时,它在屏幕上不可见(我必须滚动才能看到它) 因此,我必须能够滚动到一个孩子才能在屏幕上看到它,而不必手动滚动ScrolledWindow
我该怎么做?我已经搜索了很多,但是找不到很好的答案。 谢谢
答案 0 :(得分:1)
<GridLayout columns="*" rows="*">
<WebView row="0" col="0" id="wv" height="100%"/>
</GridLayout>
也继承自Gtk.ListBox
,因此请查看Gtk::Container
的{{1}}和set_focus_vadjustment()
成员。
一旦您在ListBox上调用了这两个功能之一或全部,就可以拥有ListBoxRow子项set_focus_hadjustment()
(从Gtk.Widget继承),它将滚动到视图中。