时间选择器
Material 风格的时间选择器对话框。
它被添加到 page.overlay
中,并使用其 pick_time()
方法调用。
根据 time_picker_entry_mode
,它将显示时钟拨号盘或小时和分钟文本字段来选择时间。
示例
基本时间选择器
- Python
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
枚举类型,可能的值是 PORTRAIT
和 LANDSCAPE
。
time_picker_entry_mode
时间选择器对话框的初始输入方法。
属性值是 TimePickerEntryMode
枚举类型,可能的值是:
DIAL
(默认)INPUT
DIAL_ONLY
INPUT_ONLY
在 DIAL
模式下,用户从时钟拨号盘中选择时间。
可以通过激活对话框中的模式按钮切换到输入模式。
在 INPUT
模式下,用户可以通过输入文本字段输入时间。
可以通过激活对话框中的模式按钮切换到拨号盘模式。
DIAL_ONLY
和 INPUT_ONLY
是上述模式的变体,不允许用户更改模式。
value
选择器应该显示的选定时间。默认值是当前时间。
方法
pick_time()
打开时间选择器对话框。
事件
on_change
用户点击确认按钮时触发。value
属性将被更新为选定的时间。e.data
也包含选定的时间。
on_dismiss
用户点击取消按钮或对话框外部时触发。
on_entry_mode_change
时间选择器输入方法更改时触发。事件处理程序 (e
) 是 TimePickerEntryModeChangeEvent
类型,新的输入方法可以从 e.entry_mode
中获取(值是 TimePickerEntryMode
枚举类型)。