类
GtkPaned
描述 [src]
final class Gtk.Paned : Gtk.Widget
implements Gtk.Accessible, Gtk.AccessibleRange, Gtk.Buildable, Gtk.ConstraintTarget, Gtk.Orientable {
/* No available fields */
}
带有两个窗格的小组件,水平或垂直排列。
用户可以通过拖动一个控制手柄来调整两个窗格之间的分隔。
子小组件通过 gtk_paned_set_start_child()
和 gtk_paned_set_end_child()
添加到小组件的窗格。两个子组件之间的分隔默认根据子组件的大小请求进行设置,但用户可以调整它。
如果缺少其中一个子组件,则不会绘制分隔符。一个 paned 小组件在两个子组件之间绘制一个分隔符和一个用于调整分隔的小控制手柄。它不会在子组件或分隔符周围绘制任何凸起。(分隔符所在的区域称为槽。)通常,将每个子组件放入 GtkFrame
中非常有用,这样槽就会显示为一个脊。如果没有,则不绘制分隔符。
每个子项都可以设置两个选项,“调整大小”和“收缩”。如果“调整大小”为 true,则当 GtkPaned
大小时,该子项将随着窗格小部件一起展开或收缩。如果“收缩”为 true,则用户可以使该子项小于其请示。将“收缩”设置为 false 允许应用程序设置最小大小。如果两个子项的“调整大小”都是 false,则视为两个子项都将“调整大小”设置为 true。
应用程序可以通过调用 gtk_paned_set_position()
设置滑块的位置,就像由用户设置一样。
快捷键和手势
以下信号具有默认的键位绑定
GtkPaned::accept-position
GtkPaned::cancel-position
GtkPaned::cycle-child-focus
GtkPaned::cycle-handle-focus
GtkPaned::move-handle
GtkPaned::toggle-handle-focus
CSS 节点
paned
├── <child>
├── separator[.wide]
╰── <child>
GtkPaned
有一个带有名称 paned 的主 CSS 节点,和一个带有名称 separator 的分隔符子节点。如果窗格应该变宽,该子节点会获取一个 .wide 样式类。
在水平方向上,这些节点将根据文本方向进行排列,因此在从左到右模式中,:first-child 将选择最左边的子项,而在 RTL 布局中,它将选择最右边的子项。
创建具有最小大小的窗格小部件。
GtkWidget *hpaned = gtk_paned_new (GTK_ORIENTATION_HORIZONTAL);
GtkWidget *frame1 = gtk_frame_new (NULL);
GtkWidget *frame2 = gtk_frame_new (NULL);
gtk_widget_set_size_request (hpaned, 200, -1);
gtk_paned_set_start_child (GTK_PANED (hpaned), frame1);
gtk_paned_set_resize_start_child (GTK_PANED (hpaned), TRUE);
gtk_paned_set_shrink_start_child (GTK_PANED (hpaned), FALSE);
gtk_widget_set_size_request (frame1, 50, -1);
gtk_paned_set_end_child (GTK_PANED (hpaned), frame2);
gtk_paned_set_resize_end_child (GTK_PANED (hpaned), FALSE);
gtk_paned_set_shrink_end_child (GTK_PANED (hpaned), FALSE);
gtk_widget_set_size_request (frame2, 50, -1);
实例方法
从 GtkAccessible 继承的方法 (19)
gtk_accessible_announce
请求用户的屏幕阅读器播报给定的消息。
自: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
查询此可访问对象的坐标和维度。
自: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)
从 GtkOrientable 继承的方法 (2)
属性
从 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
启用或禁用 `GtkWidget::query-tooltip` 信号在 `widget` 上的发送。
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)继承的属性
从 GtkOrientable(1)继承的属性
信号
从 GtkWidget(13)继承的信号
GtkWidget::destroy
对于小组件的任何引用持有人,信号都会发出让他们释放所持有的引用。
GtkWidget::direction-changed
小组件的文本方向发生更改时发送。
GtkWidget::hide
当 `widget` 隐藏时发送。
GtkWidget::keynav-failed
如果键盘导航失败,则发送。
GtkWidget::map
当 `widget` 即将映射时发送。
GtkWidget::mnemonic-
通过助记符激活小工具时发出。
GtkWidget::move-focus
移动焦点时发出。
GtkWidget::query-tooltip
小工具的工具提示即将显示时发出。
GtkWidget::realize
widget
与 GdkSurface
关联时发出。
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() 等设置值时,会在该对象上发出通知信号。