键盘快捷键
在 使用 Web 和桌面应用程序时,良好的键盘支持是用户生产力的关键。确实,不断地在鼠标和键盘之间切换可能会非常烦人。
除了表单控件的 .autofocus
属性和 TextField.focus()
方法外,Flet 还允许处理“全局”键盘事件。
要捕获所有按键事件,请实现 page.on_keyboard_event
处理程序。事件处理程序参数 e
是 KeyboardEvent
类的实例,具有以下属性:
key
- 按下键的文本表示,例如A
、Enter
或F5
。shift
- 如果按下“Shift”键,则为True
。ctrl
- 如果按下“Control”键,则为True
。alt
- 如果按下“Alt”(“Option”)键,则为True
。meta
- 如果按下“Command”键,则为True
。
这是一个简单的使用示例:
import flet as ft
def main(page: ft.Page):
def on_keyboard(e: ft.KeyboardEvent):
page.add(
ft.Text(
f"Key: {e.key}, Shift: {e.shift}, Control: {e.ctrl}, Alt: {e.alt}, Meta: {e.meta}"
)
)
page.on_keyboard_event = on_keyboard
page.add(
ft.Text("按下任意键,结合 CTRL、ALT、SHIFT 和 META 键...")
)
ft.app(target=main)
这里有一个 更高级的示例。