GtkCalendar

说明 [src]

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

GtkCalendar 是一个可一次显示一个月份的公历日历小部件。

An example GtkCalendar

可以使用 gtk_calendar_new() 来创建 GtkCalendar

可以使用 gtk_calendar_select_day() 来改变当前显示日期。

若要为特定日期放置视觉标记,请使用 gtk_calendar_mark_day(),若要移除标记,请使用 gtk_calendar_unmark_day()。另外,可以使用 gtk_calendar_clear_marks() 来清除所有标记。

可以使用 gtk_calendar_get_date()GtkCalendar 中获取所选日期。

用户应该知道,虽然公历在大多数国家是法定日历,但它是在 1582 年至 1929 年间逐步普及开来的。因此,这些日期之前的日期显示在历史上可能是不正确的。

快捷方式和手势

GtkCalendar 支持以下手势

  • 向上或向下滚动切换到上个月或下个月。
  • 可以删除日期字符串以设置当前日期。

CSS 节点

calendar.view
├── header
│   ├── button
│   ├── stack.month
│   ├── button
│   ├── button
│   ├── label.year
│   ╰── button
╰── grid
    ╰── label[.day-name][.week-number][.day-number][.other-month][.today]

GtkCalendar 有一个名为 calendar 的主节点。它包含一个名为主页的子节点,其中包含用于在年份和月份之间切换的小部件。

网格子节点包含所有日期标签,包括左侧的星期数(标记为 .week-number css 类)和顶部的日期名称(标记为 .day-name css 类)。

属于上个月或下个月的日期标签获得 .other-month 样式类。当天标签获取 .today 样式类。

被标记的日期标签获得 :selected 状态分配。

层次结构

hierarchy this GtkCalendar 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_calendar_new

创建一个新日历,并选择当前日期。

实例方法

gtk_calendar_clear_marks

删除所有可视化标记。

gtk_calendar_get_date

返回一个表示显示的年、月和所选天的 GDateTime

gtk_calendar_get_day

获取所选日期的天。

since: 4.14

gtk_calendar_get_day_is_marked

返回 calendarday 是否已标记。

gtk_calendar_get_month

获取所选日期的月。

since: 4.14

gtk_calendar_get_show_day_names

返回 self 当前是否显示星期几名称。

gtk_calendar_get_show_heading

返回 self 当前是否显示标题。

gtk_calendar_get_show_week_numbers

返回 self 当前是否显示星期数。

gtk_calendar_get_year

获取所选日期的年。

since: 4.14

gtk_calendar_mark_day

将可视化标记放到当前月的特定天。

gtk_calendar_select_day

切换到 date 的年和月,并选择其天。

gtk_calendar_set_day

设置所选日期的天。

since: 4.14

gtk_calendar_set_month

设置所选日期的月。

since: 4.14

gtk_calendar_set_show_day_names

设置日历是否显示星期名称。

gtk_calendar_set_show_heading

设置日历是否显示标题。

gtk_calendar_set_show_week_numbers

设置日历中是否显示星期数。

gtk_calendar_set_year

设置所选日期的年。

since: 4.14

gtk_calendar_unmark_day

从特定天移除可视化标记。

GtkWidget(162 个)继承的方法

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

GObject(43 个)继承的方法

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

GtkAccessible(19 个)继承的方法
gtk_accessible_announce

要求用户的屏幕阅读器发出给定消息。

since: 4.14

gtk_accessible_get_accessible_parent

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

since: 4.10

gtk_accessible_get_accessible_role

检索可访问对象的可访问角色。

gtk_accessible_get_at_context

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

since: 4.10

gtk_accessible_get_bounds

查询此可访问对象坐标和维度。

since: 4.10

gtk_accessible_get_first_accessible_child

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

since: 4.10

gtk_accessible_get_next_accessible_sibling

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

since: 4.10

gtk_accessible_get_platform_state

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

since: 4.10

gtk_accessible_reset_property

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

gtk_accessible_reset_relation

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

gtk_accessible_reset_state

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

gtk_accessible_set_accessible_parent

设置可访问对象的父对象和同级对象。

since: 4.10

gtk_accessible_update_next_accessible_sibling

更新下一个可访问同级对象。

since: 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.Calendar:day

选中的日期(介于 1 到 31 之间的数字)。

Gtk.Calendar:month

选中的月份(介于 0 到 11 之间的数字)。

Gtk.Calendar:show-day-names

确定是否显示日期名称。

Gtk.Calendar:show-heading

确定是否显示页眉。

Gtk.Calendar:show-week-numbers

确定是否显示星期数。

Gtk.Calendar:year

选定的年份。

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

widget 或其任何子项是否能够接受输入焦点。

Gtk.Widget:can-target

widget 是否能够接收指针事件。

Gtk.Widget:css-classes

应用于此 widget 的 css 类别列表。

Gtk.Widget:css-name

此 widget 在 CSS 树中的名称。

Gtk.Widget:cursor

widget 使用的游标。

Gtk.Widget:focus-on-click

当使用鼠标单击 widget 时,它是否应获取焦点。

Gtk.Widget:focusable

该 widget 本身是否将接受输入焦点。

Gtk.Widget:halign

如果 widget 获得额外的空间,则应如何分配水平空间。

Gtk.Widget:has-default

widget 是否为默认 widget。

Gtk.Widget:has-focus

widget 是否具有输入焦点。

Gtk.Widget:has-tooltip

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

Gtk.Widget:height-request

widget 的高度请求的覆盖。

Gtk.Widget:hexpand

是否水平扩展。

Gtk.Widget:hexpand-set

是否使用 hexpand 属性。

Gtk.Widget:layout-manager

用于计算 widget 的首选大小并分配其子项的 GtkLayoutManager 实例。

Gtk.Widget:margin-bottom

widget 底部的边距。

Gtk.Widget:margin-end

水平方向上 widget 末尾的边距。

Gtk.Widget:margin-start

水平方向上 widget 起始的边距。

Gtk.Widget:margin-top

widget 顶部的边距。

Gtk.Widget:name

widget 的名称。

Gtk.Widget:opacity

widget 的请求的不透明度。

Gtk.Widget:overflow

widget 内容区域外的内容是如何处理的。

Gtk.Widget:parent

此 widget 的父 widget。

Gtk.Widget:receives-default

widget 获得焦点时,它是否将接收默认操作。

Gtk.Widget:root

包含此 widget 的 widget 树的 GtkRoot widget。

Gtk.Widget:scale-factor

widget 的比例因子。

Gtk.Widget:sensitive

widget 是否响应输入。

Gtk.Widget:tooltip-markup

将 tooltip 的文本设置为给定的字符串,该字符串用 Pango 标记标记。

Gtk.Widget:tooltip-text

将 tooltip 的文本设置为给定的字符串。

Gtk.Widget:valign

如果 widget 获得额外的空间,则应如何分配垂直空间。

Gtk.Widget:vexpand

是否垂直扩展。

Gtk.Widget:vexpand-set

是否使用 vexpand 属性。

Gtk.Widget:visible

widget 是否可见。

Gtk.Widget:width-request

widget 的宽度请求的覆盖。

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

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

信号

Gtk.Calendar::day-selected

当用户选择日期时发出。

Gtk.Calendar::next-month

当用户切换到下一个月份时发出。

Gtk.Calendar::next-year

当用户切换到下一年时发出。

Gtk.Calendar::prev-month

用户切换到上个月份时发出。

Gtk.Calendar::prev-year

用户切换到上一年份时发出。

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() 等方式设置了值时,会在对象上发出通知信号。