GtkLevelBar

描述 [src]

final class Gtk.LevelBar : Gtk.Widget
  implements Gtk.Accessible, Gtk.AccessibleRange, Gtk.Buildable, Gtk.ConstraintTarget, Gtk.Orientable {
  /* No available fields */
}

GtkLevelBar 是一个可用作电平指示器的微件。

典型用例是显示密码强度或显示电池电量。

An example GtkLevelBar

使用 gtk_level_bar_set_value() 设置当前值,使用 gtk_level_bar_add_offset_value() 设置条形将被视为处于不同状态的值偏移量。 GTK 会在电平条形上默认添加一些偏移量:GTK_LEVEL_BAR_OFFSET_LOWGTK_LEVEL_BAR_OFFSET_HIGHGTK_LEVEL_BAR_OFFSET_FULL,值分别为 0.25、0.75 和 1.0。

请注意,更改最小值或最大值时,更新现有偏移量是你的责任。 GTK 只会将其限制在新范围。

在条形上添加自定义偏移量

static GtkWidget *
create_level_bar (void)
{
  GtkWidget *widget;
  GtkLevelBar *bar;

  widget = gtk_level_bar_new ();
  bar = GTK_LEVEL_BAR (widget);

  // This changes the value of the default low offset

  gtk_level_bar_add_offset_value (bar,
                                  GTK_LEVEL_BAR_OFFSET_LOW,
                                  0.10);

  // This adds a new offset to the bar; the application will
  // be able to change its color CSS like this:
  //
  // levelbar block.my-offset {
  //   background-color: magenta;
  //   border-style: solid;
  //   border-color: black;
  //   border-width: 1px;
  // }

  gtk_level_bar_add_offset_value (bar, "my-offset", 0.60);

  return widget;
}

值的默认间隔介于零到一之间,但可以使用 gtk_level_bar_set_min_value()gtk_level_bar_set_max_value() 修改间隔。值将始终按可接受间隔成比例绘制,即在 10 和 20 之间指定间隔的值 15 等于在 0 和 1 之间间隔的值 0.5。当使用 GTK_LEVEL_BAR_MODE_DISCRETE 时,条形电平将作为有限数量的分离块呈现,而不是单个块。要呈现的块数等于可接受间隔指定的单位数。

例如,要构建一个用五个块呈现的条形,只需将最小值设为 0,将最大值设为 5,然后将指示器模式更改为离散即可。

GtkLevelBar 作为 GtkBuildable

GtkLevelBarGtkBuildable 接口的实现支持自定义 <offsets> 元素,其中可以包含任意数量的 <offset> 元素,每个元素都必须具有 “name” 和 “value” 属性。

CSS 节点

levelbar[.discrete]
╰── trough
    ├── block.filled.level-name
    ┊
    ├── block.empty
    ┊

GtkLevelBar 具有一个名为 levelbar 的主 CSS 节点和一个样式类 .discrete 或 .continuous 以及一个名为 trough 的子节点。trough 节点下面是若干个名为 block 且样式类为 .filled 或 .empty 的节点。在连续模式下,每个节点都只有一个,在离散模式下,已填和未填节点的数量对应绘制的块。block.filled 节点还会获得一个样式类 .level-name 对应当前值的级别。

在水平方向中,不管文本方向,节点始终从左到右排列。

辅助功能

GtkLevelBar 使用 GTK_ACCESSIBLE_ROLE_METER 角色。

层次结构

hierarchy this GtkLevelBar implements_0 GtkAccessible this--implements_0 implements_1 GtkAccessibleRange this--implements_1 implements_2 GtkBuildable this--implements_2 implements_3 GtkConstraintTarget this--implements_3 implements_4 GtkOrientable this--implements_4 ancestor_0 GtkWidget ancestor_0--this ancestor_1 GInitiallyUnowned ancestor_1--ancestor_0 ancestor_2 GObject ancestor_2--ancestor_1

构造函数

gtk_level_bar_new

创建新的 GtkLevelBar

gtk_level_bar_new_for_interval

为指定间隔创建新的 GtkLevelBar

实例方法

gtk_level_bar_add_offset_value

value 指定的位置向 self 中添加新的偏移标记。

gtk_level_bar_get_inverted

返回 levelbar 是否反转。

gtk_level_bar_get_max_value

返回 GtkLevelBarmax-value

gtk_level_bar_get_min_value

返回 GtkLevelBarmin-value

gtk_level_bar_get_mode

返回 GtkLevelBarmode

gtk_level_bar_get_offset_value

提取在 self 中为偏移标记 name 指定的值。

gtk_level_bar_get_value

返回 GtkLevelBarvalue

gtk_level_bar_remove_offset_value

GtkLevelBar 中移除偏移标记。

gtk_level_bar_set_inverted

设置 GtkLevelBar 是否反转。

gtk_level_bar_set_max_value

设置 GtkLevelBarmax-value

gtk_level_bar_set_min_value

设置 GtkLevelBarmin-value

gtk_level_bar_set_mode

设置 GtkLevelBarmode

gtk_level_bar_set_value

设置 GtkLevelBar 的值。

GtkWidget (162) 继承的方法

有关方法的完整列表请参见 GtkWidget

GObject (43) 继承的方法

有关方法的完整列表请参见 GObject

GtkAccessible (19) 继承的方法
gtk_accessible_announce

请求用户的屏幕阅读器播报给定的 message。

自:4.14 起

gtk_accessible_get_accessible_parent

检索可访问对象的辅助功能父类。

自:4.10 起

gtk_accessible_get_accessible_role

检索可访问对象的辅助功能角色。

gtk_accessible_get_at_context

检索给定可访问对象的实现。

自:4.10 起

gtk_accessible_get_bounds

查询此 accessible 的坐标和尺寸。

自:4.10 起

gtk_accessible_get_first_accessible_child

检索可访问对象的第一个可访问子项。

自:4.10 起

gtk_accessible_get_next_accessible_sibling

检索可访问对象的下一个可访问兄弟项。

自:4.10 起

gtk_accessible_get_platform_state

查询平台状态,例如 焦点。

自:4.10 起

gtk_accessible_reset_property

将可访问属性重置为其默认 值。

gtk_accessible_reset_relation

将可访问关系重置为其默认 值。

gtk_accessible_reset_state

将可访问的状态重置为其默认值。

gtk_accessible_set_accessible_parent

设置可访问对象的父级和兄弟元素。

自:4.10 起

gtk_accessible_update_next_accessible_sibling

更新下一个可访问对象兄弟元素。

自:4.10 起

gtk_accessible_update_property

更新可访问属性的列表。

gtk_accessible_update_property_value

更新可访问属性数组。

gtk_accessible_update_relation

更新可访问对象关系的列表。

gtk_accessible_update_relation_value

更新可访问对象关系数组。

gtk_accessible_update_state

更新可访问状态的列表。

gtk_accessible_update_state_value

更新可访问状态的数组。

GtkBuildable 继承的方法 (1)
gtk_buildable_get_buildable_id

获取 buildableID

GtkOrientable 继承的方法 (2)
gtk_orientable_get_orientation

检索 orientable 的方向。

gtk_orientable_set_orientation

设置 orientable 的方向。

属性

Gtk.LevelBar:inverted

GtkLeveBar 是否反转。

Gtk.LevelBar:max-value

确定该条形框所能显示的间隔的最大值。

Gtk.LevelBar:min-value

确定该条形框所能显示的间隔的最小值。

Gtk.LevelBar:mode

确定 GtkLevelBar 理解值属性以绘制水平填充区域的方式。

Gtk.LevelBar:value

确定水平条形框当前填充的值。

GtkWidget 继承的属性 (34)
Gtk.Widget:can-focus

该窗口小组件或其任何后代元素是否可以接受输入焦点。

Gtk.Widget:can-target

该窗口小组件是否可以接收指针事件。

Gtk.Widget:css-classes

应用到该窗口小组件的一系列 css 类。

Gtk.Widget:css-name

该窗口小组件在 CSS 树中的名称。

Gtk.Widget:cursor

widget 使用的鼠标光标。

Gtk.Widget:focus-on-click

使用鼠标点按该窗口小组件时,该窗口小组件是否应获取焦点。

Gtk.Widget:focusable

此窗口小组件本身是否将接受输入焦点。

Gtk.Widget:halign

如果窗口小组件获得额外的空间,如何分配水平空间。

Gtk.Widget:has-default

该窗口小组件是否是默认窗口小组件。

Gtk.Widget:has-focus

该窗口小组件是否具有输入焦点。

Gtk.Widget:has-tooltip

widget 上启用或禁用 GtkWidget::query-tooltip 信号的发出。

Gtk.Widget:height-request

重写窗口小组件的高度请求。

Gtk.Widget:hexpand

是否水平扩展。

Gtk.Widget:hexpand-set

是否使用 hexpand 属性。

Gtk.Widget:layout-manager

要用来计算该窗口小组件首选大小并分配其子元素的 GtkLayoutManager 实例。

Gtk.Widget:margin-bottom

窗口小组件底部的边距。

Gtk.Widget:margin-end

窗口小组件末尾的边距(水平)。

Gtk.Widget:margin-start

窗口小组件开头的边距(水平)。

Gtk.Widget:margin-top

窗口小组件顶部的边距。

Gtk.Widget:name

窗口小组件的名称。

Gtk.Widget:opacity

窗口小组件请求的不透明度。

Gtk.Widget:overflow

窗口小组件的内容区域之外的内容如何处理。

Gtk.Widget:parent

该窗口小组件的父级窗口小组件。

Gtk.Widget:receives-default

当窗口小组件获得焦点时,它是否将接收默认操作。

Gtk.Widget:root

包含该窗口小部件的窗口小部件树的GtkRoot窗口小部件。

Gtk.Widget:scale-factor

窗口小部件的缩放比例。

Gtk.Widget:sensitive

窗口小部件是否对输入作出响应。

Gtk.Widget:tooltip-markup

设置工具提示文本为给定字符串,它用 Pango 标记标记。

Gtk.Widget:tooltip-text

设置工具提示文本为给定字符串。

Gtk.Widget:valign

如果窗口小部件获得额外空间,如何分配垂直空间。

Gtk.Widget:vexpand

是否垂直展开。

Gtk.Widget:vexpand-set

是否使用vexpand属性。

Gtk.Widget:visible

窗口小部件是否可见。

Gtk.Widget:width-request

窗口小部件的宽度请求的重写。

GtkAccessible (1) 继承的属性
GtkAccessible:accessible-role

给定的GtkAccessible实现的可访问角色。

GtkOrientable (1) 继承的属性
GtkOrientable:orientation

可定向元素的方向。

信号

Gtk.LevelBar::offset-changed

当在工具栏上指定的偏移量更改值时发出。

GtkWidget (13) 继承的信号
GtkWidget::destroy

通知所有窗口小部件引用持有者释放它们持有的引用的信号。

GtkWidget::direction-changed

窗口小部件的文本方向更改时发出的信号。

GtkWidget::hide

隐藏widget时发出。

GtkWidget::keynav-failed

如果键盘导航失败,则发出该信号。

GtkWidget::map

widget将被映射时发出的信号。

GtkWidget::mnemonic-activate

通过助记符激活窗口小部件时发出。

GtkWidget::move-focus

焦点被移动时发出。

GtkWidget::query-tooltip

窗口小部件的工具提示即将显示时发出。

GtkWidget::realize

widgetGdkSurface关联起来时发出。

GtkWidget::show

显示widget时发出。

GtkWidget::state-flags-changed

窗口小部件状态更改时发出。

GtkWidget::unmap

将要取消映射widget时发出。

GtkWidget::unrealize

widget 关联的 GdkSurface 被销毁时发出。

GObject (1) 继承的信号
GObject::notify

对对象的其中一个属性通过 g_object_set_property()、g_object_set() 等设置其值时,会发出该通知信号。