user-interface - 可以将填充级别设置为低于 Gtk::Scale 的值吗?

标签 user-interface gtk gtkmm

虽然使用 set_fill_level 将填充级别设置为高于比例值很简单,但将填充级别设置为低于比例值似乎不起作用。

为了澄清,我希望能够在 slider 处于 50% 时将填充水平设置为 25%

FFFF----S-------
  • 我是否遗漏了一些明显的东西?

或者:

  • 有谁知道有什么巧妙的技巧可以让它发挥作用吗?

额外详细信息:

  • libgtk2.0-dev
  • libgtkmm-2.4-dev
  • Ubuntu 10.04.4
  • 默认主题(氛围)

不良行为的图像:

enter image description here

enter image description here

最佳答案

您只需禁用限制:

Additionally, it's possible to restrict the range's slider position to values which are smaller than the fill level. This is controller [sic] by gtk_range_set_restrict_to_fill_level() and is by default enabled.

( Source )

更新:示例:

GtkHScale with fill-level=3 and value=5

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 和 GTK+ 3)都有这个问题。作为记录,我的屏幕截图是使用 Adwaita (GTK+ 3) 主题拍摄的。

关于user-interface - 可以将填充级别设置为低于 Gtk::Scale 的值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10623566/

相关文章:

c++ - GTK+/Gtkmm,检查notebook标签页是否已经存在,不存在才创建

java - 如何在 Java 中通过按钮输入值来创建序列?

windows - Windows 是否允许有一个同时带有帮助按钮和最小/最大按钮的窗口?

python - _really_ 禁用 GtkTreeView 搜索

python - 将菜单添加到 GtkMenuToolButton (Python)

python - Linux 上使用 pygtk (gtk.gdk) 的桌面/根窗口上的键盘/鼠标事件

c++ - 调用 const 成员函数

c++ - gtkmm 和 MSAA 可访问性

java - TableLayoutPanel 在 Swing 中的模拟

java - 组件未对准