GtkDropDown

描述 [src]

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

GtkDropDown 是一个允许用户从选项列表中选择一个选项的小组件。

An example GtkDropDown

GtkDropDown 显示 selected 选项。

GListModel 的形式提供选项给 GtkDropDown,不同选项的显示方式由 GtkListItemFactory 决定。默认工厂显示简单字符串,并在弹出菜单中为所选项目添加一个复选标记。

如需设置自己的工厂,请使用 gtk_drop_down_set_factory()。可以使用单独的工厂来显示弹出菜单中的项目,方法是使用 gtk_drop_down_set_list_factory()

GtkDropDown 能够从 GtkStringList 中的项目获取字符串;对于其他模型,你必须通过 gtk_drop_down_set_expression() 提供表达式以查找字符串。

GtkDropDown 可以选择允许在弹出菜单中搜索,这在选项列表很长时很有用。如需启用搜索输入栏,请使用 gtk_drop_down_set_enable_search()

下面是一个带有简单模型的 GtkDropDownUI 定义示例

<object class="GtkDropDown">
  <property name="model">
    <object class="GtkStringList">
      <items>
        <item translatable="yes">Factory</item>
        <item translatable="yes">Home</item>
        <item translatable="yes">Subway</item>
      </items>
    </object>
  </property>
</object>

如果按照上述方式或使用 gtk_drop_down_new_from_strings() 创建 GtkDropDowngtk_drop_down_get_selected_item() 返回的对象将是 GtkStringObject

如需详细了解列表小组件框架,请参阅 概述

CSS 节点

GtkDropDown 具有一个名为 dropdown 的单个 CSS 节点,其中按钮和小浮动窗口节点为子节点。

辅助功能

GtkDropDown 使用 GTK_ACCESSIBLE_ROLE_COMBO_BOX 角色。

层级

hierarchy this GtkDropDown 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_drop_down_new

创建新的 GtkDropDown

gtk_drop_down_new_from_strings

创建新的 GtkDropDown,其中填充有字符串。

实例方法

gtk_drop_down_get_enable_search

返回是否启用搜索。

gtk_drop_down_get_expression

获取用于从项目中获取字符串的表达式集。

gtk_drop_down_get_factory

获取当前用于填充列表项目的工厂。

gtk_drop_down_get_header_factory

获取当前用于为弹出窗口创建头小组件的工厂。

自:4.12

gtk_drop_down_get_list_factory

获取当前用于填充弹出窗口中列表项目的工厂。

gtk_drop_down_get_model

获取提供显示的项目的型号。

gtk_drop_down_get_search_match_mode

返回搜索过滤器使用的匹配模式。

自:4.12

gtk_drop_down_get_selected

获取所选项目的位序。

gtk_drop_down_get_selected_item

获取所选项目。如果未选择任何项目,将返回 NULL

gtk_drop_down_get_show_arrow

返回小组件内部是否显示箭头。

自:4.6

gtk_drop_down_set_enable_search

设置是否在弹出窗口中显示一个搜索条目,允许在列表中搜索项目。

gtk_drop_down_set_expression

设置用于从项目中获取字符串的表达式。

gtk_drop_down_set_factory

设置用于填充列表项目的 GtkListItemFactory

gtk_drop_down_set_header_factory

设置用于为弹出窗口创建头小组件的 GtkListItemFactory

自:4.12

gtk_drop_down_set_list_factory

设置用于填充弹出窗口中列表项目的 GtkListItemFactory

gtk_drop_down_set_model

设置要使用的 GListModel

gtk_drop_down_set_search_match_mode

设置搜索过滤器的匹配模式。

自:4.12

gtk_drop_down_set_selected

选择给定位序的项目。

gtk_drop_down_set_show_arrow

设置小组件内部是否显示箭头。

自:4.6

GtkWidget (162) 继承的方法

请参阅 GtkWidget 以获取完整的清单。

GObject (43) 继承的方法

请参阅 GObject 以获取完整的方法清单。

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)继承的方法
gtk_buildable_get_buildable_id

获取buildable对象的ID

属性

Gtk.DropDown:enable-search

是否在弹出窗口中显示搜索条目。

Gtk.DropDown:expression

进行评估以获取字符串来匹配搜索词的表达式。

Gtk.DropDown:factory

填充列表项的工厂。

Gtk.DropDown:header-factory

为弹出窗口创建头部件的工厂。

自:4.12

Gtk.DropDown:list-factory

填充弹出窗口中列表项的工厂。

Gtk.DropDown:model

所显示项目的模型。

Gtk.DropDown:search-match-mode

用于搜索过滤器的匹配模式。

自:4.12

Gtk.DropDown:selected

所选项的位置。

Gtk.DropDown:show-arrow

是否在 GtkDropDown 部件中显示箭头。

自:4.6

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

信号

Gtk.DropDown:activate

在下拉列表激活时发出。

自:4.6

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

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() 等来设置时,会对该对象发出一个 notify 信号。

类结构

struct GtkDropDownClass {
  GtkWidgetClass parent_class;
  
}

没有可用的描述。

类成员
parent_class: GtkWidgetClass

没有可用的描述。