虽然使用set_fill_level
设置填充水平高于Scale的值是非常明确的,但填充水平低于Scale的值似乎不起作用。
为了澄清我想,例如,当滑块为50%时,能够将填充水平设置为25%
FFFF----S-------
或者:
额外细节:
不良行为的图片:
答案 0 :(得分:2)
您只需要禁用限制:
此外,可以将范围的滑块位置限制为小于填充水平的值。这是
gtk_range_set_restrict_to_fill_level()
的控制器 [sic] ,默认情况下已启用。
(Source)
更新:示例:
import gtk
s = gtk.HScale()
s.set_show_fill_level(True)
s.set_restrict_to_fill_level(False) # <=====
s.set_range(0, 10)
s.set_fill_level(3)
s.set_value(5)
w = gtk.Window()
w.connect('destroy', lambda *x: gtk.main_quit())
w.add(s)
w.show_all()
gtk.main()
更新2:您的屏幕截图中出现的问题很可能是GTK +主题中的错误。我测试过的大约一半主题(GTK + 2和3)都有这个问题。为了记录,我的截图是使用Adwaita(GTK + 3)主题拍摄的。