跳到主要内容

键盘快捷键

在使用 Web 和桌面应用程序时,良好的键盘支持是用户生产力的关键。确实,不断地在鼠标和键盘之间切换可能会非常烦人。

除了表单控件的 .autofocus 属性和 TextField.focus() 方法外,Flet 还允许处理“全局”键盘事件。

要捕获所有按键事件,请实现 page.on_keyboard_event 处理程序。事件处理程序参数 eKeyboardEvent 类的实例,具有以下属性:

  • key - 按下键的文本表示,例如 AEnterF5
  • 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)

这里有一个 更高级的示例