鸿蒙ArkTS声明式开发:跨平台支持列表【组件快捷键事件】

发布于:2024-06-01 ⋅ 阅读:(179) ⋅ 点赞:(0)

 组件快捷键事件

开发者可以设置组件的自定义组合键,组合键的行为与click行为一致,组件在未获得焦点状态下也可以响应自定义组合键,每个组件可以设置多个组合键。

说明:
开发前请熟悉鸿蒙开发指导文档gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md点击或者复制转到。
从API Version 10开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。

接口

keyboardShortcut(value: string | [FunctionKey], keys: Array<[ModifierKey]>)

参数:

参数名 参数类型 必填 参数描述
value string [FunctionKey] 热键的单个字符(可以通过键盘输入的字符)或[FunctionKey]。
keys Array<[ModifierKey]> 热键组合。

ModifierKey

名称 描述
CTRL 表示键盘上Ctrl键。
SHIFT 表示键盘上Shift键。
ALT 表示键盘上Alt键。

FunctionKey

名称 描述
ESC 表示键盘上ESC功能键。
F1 表示键盘上F1功能键。
F2 表示键盘上F2功能键。
F3 表示键盘上F3功能键。
F4 表示键盘上F4功能键。
F5 表示键盘上F5功能键。
F6 表示键盘上F6功能键。
F7 表示键盘上F7功能键。
F8 表示键盘上F8功能键。
F9 表示键盘上F9功能键。
F10 表示键盘上F10功能键。
F11 表示键盘上F11功能键。
F12 表示键盘上F12功能键。

快捷键使用注意事项

场景 快捷键处理逻辑 例子
所有支持onClick事件的组件 支持自定义组合键
自定义组合键要求 控制键Ctrl,Shift,Alt及它们的组合加上其它可输入字符按键 Button('button1').keyboardShortcut('a',[ModifierKey.CTRL])
多个不同组件设置相同组合键 只响应结点树上的第一个组件、其它组件不响应快捷键。 Button('button1').keyboardShortcut('a',[ModifierKey.CTRL]) Button('button2').keyboardShortcut('a',[ModifierKey.CTRL])
无论组件是否获得焦点 只要窗口获焦快捷键就会响应
绑定单个快捷键时候,通过keyboardShortcut接口value值或者是keys值或两者都是空的情况下。 绑定多个快捷键的时候无法取消快捷键。 取消快捷键的设置 Button('button1').keyboardShortcut('',[ModifierKey.CTRL]) Button('button2').keyboardShortcut('a',[l]) Button('button3').keyboardShortcut('',[])
独立pipeline子窗口、主窗口共存的情况下 获焦的窗口响应快捷键
keyboardShortcut接口中的keys命令中ctrl、shift、alt 不区分左右键都响应 Button('button1').keyboardShortcut('a',[ModifierKey.CTRL, ModifierKey.ALT])
keyboardShortcut接口中的value单个字符 不区分大小写都响应 Button('button1').keyboardShortcut('a',[ModifierKey.CTRL]) Button('button2').keyboardShortcut('A',[ModifierKey.CTRL])
快捷键的响应 所有快捷键down的状态下响应、且连续响应
隐藏组件 响应快捷键
disable状态组件 不响应快捷键
1. 组件的组合键(包括系统预定义快捷键)相同时。 2. 接口参数value有多个字符时。 3. 接口参数keys有重复的控制键时。 这几种情况不绑定组合键, 先前绑定的组合键仍然有效 Button('button1').keyboardShortcut('c',[ModifierKey.CTRL]) Button('button2').keyboardShortcut('ab',[ModifierKey.CTRL]) Button('button3').keyboardShortcut('ab',[ModifierKey.CTRL,ModifierKey.CTRL])

系统已有组合键

搜狗高速浏览器截图20240326151547.png

快捷键 组件 HarmonyOS与OpenHarmony鸿蒙文档籽料:mau123789是v直接拿
Ctrl + C [Image]、[TextInput]、[TextArea]
Ctrl+ A [TextInput]、[TextArea]
Ctrl+ V [TextInput]、[TextArea]
Ctrl+ X [TextInput]、[TextArea]
Shift + 方向键 [TextInput]、[TextArea]
Ctrl+ Shift+ Z [TextInput]、[TextArea]
Ctrl+ Z [TextInput]、[TextArea]
Ctrl+ Y [TextInput]、[TextArea]
方向键、回车键 [TextInput]、[TextArea]
TAB键 [TextInput]、[TextArea]

2024年,已有许多程序员把未来投向了鸿蒙开发,想必也在网上寻找过【鸿蒙学习资料】,然而搜索到的资料都是七零八碎比较杂乱,对于新入门的人来说增加了时间成本;为了避免大家在学习过程中浪费过多时间。对此录制了一套鸿蒙基础进阶视频(HarmonyOS NEXT开发入门&实战教学视频(200集+)发放给大家。↓↓↓点击即可

《鸿蒙 (HarmonyOS NEXT)开发入门&实战教学视频》

鸿蒙ArkTS语言》

鸿蒙ArkUI声明式》

《鸿蒙开发环境搭建》

另外还根据鸿蒙官方发布的文档结合华为内部人员分享,经过反复修改整理得出的一整套鸿蒙(HarmonyOS NEXT)学习手册(共计2000页+)想要鸿蒙进阶文档的开发者有福了!

内容包含了:(ArkTS、ArkUI、Stage模型、多端部署、分布式应用开发、音频、视频、WebGL、OpenHarmony多媒体技术、Napi组件、OpenHarmony内核、鸿蒙南向开发、鸿蒙项目实战)等技术知识点。帮助大家在学习鸿蒙路上少走弯路!点击即可↓↓↓

《鸿蒙 (HarmonyOS NEXT)开发基础与实战手册》