GtkHeaderBar

说明 [src]

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

用于创建自定义 windows 标题栏的小组件。

An example GtkHeaderBar

GtkHeaderBar 与水平 GtkCenterBox 类似。它允许在开始或末尾放置子项。此外,它允许显示窗口标题。标题将根据框的宽度居中,即使两侧的子项占用不同的空间也是如此。

GtkHeaderBar 可以添加标准的窗口框架控件,例如最小化、最大化和关闭按钮或窗口图标。

出于这些原因,GtkHeaderBar 是用作 GtkWindow 自定义标题栏小组件的自然选择(参见 gtk_window_set_titlebar()),因为它提供标题栏的典型功能,同时允许添加子项小组件。

GtkHeaderBar 作为 GtkBuildable

GtkHeaderBarGtkBuildable 接口的实现支持在开始或结束侧添加子项,方法是将 <child> 元素的 “type” 属性指定为 “start”“end”,或者通过指定 “title” 值设置标题小组件。

默认情况下,GtkHeaderBar 使用 GtkLabel 显示它所在窗口的标题作为标题小组件,相当于以下 UI 定义

<object class="GtkHeaderBar">
  <property name="title-widget">
    <object class="GtkLabel">
      <property name="label" translatable="yes">Label</property>
      <property name="single-line-mode">True</property>
      <property name="ellipsize">end</property>
      <property name="width-chars">5</property>
      <style>
        <class name="title"/>
      </style>
    </object>
  </property>
</object>

CSS 节点

headerbar
╰── windowhandle
    ╰── box
        ├── box.start
        │   ├── windowcontrols.start
        │   ╰── [other children]
        ├── [Title Widget]
        ╰── box.end
            ├── [other children]
            ╰── windowcontrols.end

GtkHeaderBarCSS 节点称为 headerbar。它包含一个 windowhandle 子节点,其中包含一个 box 子节点,该子节点在标题栏的开始和结束位置包含两个 box 子节点,以及表示标题的中心节点。

每个框都包含一个 windowcontrols 子节点,有关详细信息,请参见 GtkWindowControls,以及其他子项。

辅助功能

GtkHeaderBar 使用 GTK_ACCESSIBLE_ROLE_GROUP 角色。

层级

hierarchy this GtkHeaderBar implements_0 GtkAccessible this--implements_0 implements_1 GtkBuildable this--implements_1 implements_2 GtkConstraintTarget this--implements_2 ancestor_0 GtkWidget ancestor_0--this ancestor_1 GInitiallyUnowned ancestor_1--ancestor_0 ancestor_2 GObject ancestor_2--ancestor_1

构造函数

gtk_header_bar_new

创建一个新的 GtkHeaderBar 小组件。

实例方法

gtk_header_bar_get_decoration_layout

获取标题栏的装饰布局。

gtk_header_bar_get_show_title_buttons

返回此标题栏是否显示标准窗口标题按钮。

gtk_header_bar_get_title_widget

检索标题栏的标题小部件。

gtk_header_bar_pack_end

将子项添加到标题栏,参照末尾进行封装。

gtk_header_bar_pack_start

将子项添加到标题栏,参照开头进行封装。

gtk_header_bar_remove

从标题栏移除子项。

gtk_header_bar_set_decoration_layout

设置此标题栏的装饰布局。

gtk_header_bar_set_show_title_buttons

设置此标题栏是否显示标准窗口标题按钮。

gtk_header_bar_set_title_widget

为标题栏设置标题。

GtkWidget (162) 继承的方法

请参阅 GtkWidget 以获取方法的完整列表。

GObject (43) 继承的方法

请参阅 GObject 以获取方法的完整列表。

GtkAccessible (19) 继承的方法
gtk_accessible_announce

请求用户的屏幕阅读器宣布给定信息。

自 4.14

gtk_accessible_get_accessible_parent

检索 GtkAccessible 对象的可访问父项。

自 4.10

gtk_accessible_get_accessible_role

获取 GtkAccessible 对象的可访问角色。

gtk_accessible_get_at_context

检索给定 GtkAccessible 对象的实现。

自 4.10

gtk_accessible_get_bounds

查询此 GtkAccessible 的坐标和尺寸。

自 4.10

gtk_accessible_get_first_accessible_child

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

自 4.10

gtk_accessible_get_next_accessible_sibling

检索 GtkAccessible 对象的下一个可访问同级项。

自 4.10

gtk_accessible_get_platform_state

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

自 4.10

gtk_accessible_reset_property

GtkAccessible 属性重置为其默认值。

gtk_accessible_reset_relation

GtkAccessible 关系重置为其默认值。

gtk_accessible_reset_state

GtkAccessible 状态重置为其默认值。

gtk_accessible_set_accessible_parent

设置 GtkAccessible 对象的父项和同级项。

自 4.10

gtk_accessible_update_next_accessible_sibling

更新下一个可访问同级项。

自 4.10

gtk_accessible_update_property

更新 GtkAccessible 属性列表。

gtk_accessible_update_property_value

更新 GtkAccessible 属性数组。

gtk_accessible_update_relation

更新 GtkAccessible 关系列表。

gtk_accessible_update_relation_value

更新 GtkAccessible 关系数组。

gtk_accessible_update_state

更新 GtkAccessible 状态列表。

gtk_accessible_update_state_value

更新 GtkAccessible 状态数组。

GtkBuildable (1) 继承的方法
gtk_buildable_get_buildable_id

获取 GtkBuildable 对象的 ID

属性

Gtk.HeaderBar:decoration-layout

按钮的装饰布局。

Gtk.HeaderBar:show-title-buttons

是否显示关闭、最小化、最大化等标题按钮。

Gtk.HeaderBar:title-widget

显示 的标题小部件。

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 实现的可访问角色。

信号

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

取消关联 GdkSurfacewidget 时发出。

继承自 GObject(1)发出的信号
GObject::notify

将一个对象的一个属性的值设为通过 g_object_set_property()、g_object_set() 等设置的值时,该对象就会发出 notify 信号。