【发布时间】:2021-06-03 21:34:49
【问题描述】:
如何让 Gtk ScrolledWindow 滚动超过一行的高度? (我的意思是在增加 ScrolledWindow 内容的高度后自动滚动。手动滚动可以正常工作。)
我的代码将 3 行写入 ScrolledWindow 内的 Viewport 内的 Gtk TextView,并指示 ScrolledWindow 滚动,但它只会向下滚动到足以显示 3 行中的第一行。
我的 ruby 代码如下所示:
# Write 3 lines of text
textview.buffer.insert_at_cursor "%s\n"%s\n%s\n % [line1, line2, line3]
# Scroll
textview.scroll_to_iter textview.buffer.end_iter, 0.0, true, 0.5, 0.5 # Scroll to end of Gtk::TextView
vadjustment = textview.parent.parent.vadjustment # Get vadjustment from Gtk::ScrolledWindow
vadjustment.set_value vadjustment.upper
我尝试将任意大值插入到 vadjustment.set_value 函数调用中,并尝试使用 step_increment 和 page_increment 进行各种数学运算,但我无法让它滚动超过一行的高度除非我手动滚动 ScrollView。我需要做什么?
【问题讨论】: