跳到主要内容

时间选择器

Material 风格的时间选择器对话框。

它被添加到 page.overlay 中,并使用其 pick_time() 方法调用。

根据 time_picker_entry_mode,它将显示时钟拨号盘或小时和分钟文本字段来选择时间。

示例

Live 示例

基本时间选择器

import datetime
import flet as ft

def main(page: ft.Page):
def change_time(e):
print(f"时间选择器改变,值(分钟)是 {time_picker.value.minute}")

def dismissed(e):
print(f"时间选择器dismissed,值是 {time_picker.value}")

time_picker = ft.TimePicker(
confirm_text="确认",
error_invalid_text="时间超出范围",
help_text="选择您的时间段",
on_change=change_time,
on_dismiss=dismissed,
)

page.overlay.append(time_picker)

date_button = ft.ElevatedButton(
"选择时间",
icon=ft.icons.TIME_TO_LEAVE,
on_click=lambda _: time_picker.pick_time(),
)

page.add(date_button)


ft.app(target=main)

属性

cancel_text

取消按钮上的文本。默认值是“取消”。

confirm_text

确认按钮上的文本。默认值是“确定”。

error_invalid_text

如果输入不是有效的小时/分钟,显示的错误消息。默认值是“输入有效时间”。

hour_label_text

小时输入文本字段下的文本。

默认值是“小时”。

help_text

头部顶部显示的文本。

用于指示用户选择时间的目的。默认值是“输入时间”。

minute_label_text

分钟输入文本字段下的文本。

默认值是“分钟”。

orientation

对话框的方向。值是 Orientation 枚举类型,可能的值是 PORTRAITLANDSCAPE

time_picker_entry_mode

时间选择器对话框的初始输入方法。

属性值是 TimePickerEntryMode 枚举类型,可能的值是:

  • DIAL(默认)
  • INPUT
  • DIAL_ONLY
  • INPUT_ONLY

DIAL 模式下,用户从时钟拨号盘中选择时间。 可以通过激活对话框中的模式按钮切换到输入模式。

INPUT 模式下,用户可以通过输入文本字段输入时间。 可以通过激活对话框中的模式按钮切换到拨号盘模式。

DIAL_ONLYINPUT_ONLY 是上述模式的变体,不允许用户更改模式。

value

选择器应该显示的选定时间。默认值是当前时间。

方法

pick_time()

打开时间选择器对话框。

事件

on_change

用户点击确认按钮时触发。value 属性将被更新为选定的时间。e.data 也包含选定的时间。

on_dismiss

用户点击取消按钮或对话框外部时触发。

on_entry_mode_change

时间选择器输入方法更改时触发。事件处理程序 (e) 是 TimePickerEntryModeChangeEvent 类型,新的输入方法可以从 e.entry_mode 中获取(值是 TimePickerEntryMode 枚举类型)。