组件快捷键事件
开发者可以设置组件的自定义组合键,组合键的行为与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] | 是 |
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]) |
系统已有组合键
快捷键 | 组件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] |
审核编辑 黄宇
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
鸿蒙
+关注
关注
60文章
2656浏览量
44346
发布评论请先 登录
相关推荐
热点推荐
abg欧博DFM软件丨操作教程——自定义快捷键篇
,关于 abg欧博DFM软件的快捷键要如何自定义设置和应用 。让你彻底摆脱此类冲突困扰,沉浸式体验abg欧博DFM的操作流程。【第一步】abg欧博DFM软件的快捷键功能设置入口:在 菜单栏点击“设置-快捷键
发表于 08-13 16:29
AD、Allegro、Pads的快捷键有什么不同
在高速迭代的电子设计领域,快捷键是工程师与EDA工具对话的核心语言,纵观EDA工具,AD的视觉化交互、Allegro的深度可编程性、Pads的无膜命令——三种理念催生了截然不同的操作逻辑,那么它们的快捷键操作是否会有些不同?

ArkUI-X跨平台应用改造指南
ArkUI-X跨平台应用改造指南
现状与诉求
随着 HarmonyOS Next 5.0 版本正式发布,众多开发者基于 ArkTS 语言为 HarmonyOS Next 系统
发表于 06-16 23:05
鸿蒙5开发宝藏案例分享---平板开发实践
展示更多内容(如分栏/网格布局)
形态灵活 :横竖屏旋转 + 自由窗口 → 必须做动态布局适配
交互扩展 :支持键鼠 → 需增加悬浮/焦点/快捷键逻辑
**?**工程配置第一步
在<
发表于 06-12 15:49
使用DevEcoStudio 开发、编译鸿蒙 NEXT_APP 以及使用中文插件
的一站式集成开发环境(IDE),专为鸿蒙操作系统(HarmonyOS Next)应用和服务开发设计 DevEco Studio,掌握基本操作和开发
发表于 06-11 17:18
Kuikly鸿蒙版正式开源 —— 揭秘卓越性能适配之旅
端的基础能力和设施,包括丰富的跨端组件,完善的调试、构建、发布、监控配套工具链,稳定性监控能力等。
Kuikly框架优势:
一码五端,支持Android、iOS、鸿蒙、Web、小程序5
发表于 06-04 16:46
鸿蒙5开发宝藏案例分享---一多开发实例(长视频)
/ # 手机增强功能
└─ pc/ # 键盘快捷键
?** 更多实战案例推荐**
案例1:电商类应用(双十一专题)
手机 :竖版商品瀑布流
平板 :左侧分类导航+右侧商品
PC :三栏式布局(分类
发表于 06-03 15:58
AD-PCB快捷键总结
1. PCB设计快捷键(单次按键)
单次按键是指按下该键并放开。
1-01 +在PCB电气层之间切换(小键盘上的+)。在交互布线的过程中,按此键则换层并自动添加过孔。这很常用。
1-02 Q
发表于 05-26 15:10
AD软件快捷键设置和导入方法
,由于Protel在国内有广大的使用群体基础,因此,AD的使用者数量在国内是最多的。近来后台有不少朋友来询问AD快捷键设置的问题,在学习的时候,考虑到跨软件使用,已经将AD、Cadence和Pads
发表于 03-26 10:03
开源啦!!!基于鸿蒙ArkTS封装的图表组件《McCharts》,大家快来一起共创
的地方请大家高抬贵手,宽容一下,谢谢。
这次主要是给大家带来一个重磅消息,就是我自己使用鸿蒙ArkTS语法开发的图表组件今日正式开源了。为什么?原因有两点吧!
发表于 03-15 15:21
评论