js-apis-inputeventclient.md 2.5 KB
Newer Older
M
mayunteng_1 已提交
1 2
# 注入按键

H
hungry_feiwei 已提交
3
InputEventClient模块提供了注入按键能力。
M
mayunteng_1 已提交
4

H
HelloCrease 已提交
5
> **说明:**
M
mayunteng_1 已提交
6
>
H
hungry_feiwei 已提交
7
> - 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
M
mayunteng_1 已提交
8
>
H
HelloCrease 已提交
9
> - 本模块接口为系统接口。
M
mayunteng_1 已提交
10 11 12 13 14


## 导入模块


H
HelloCrease 已提交
15
```js
M
mayunteng_1 已提交
16 17 18
import inputEventClient from '@ohos.multimodalInput.inputEventClient';
```

M
mayunteng_1 已提交
19
## inputEventClient.injectKeyEvent<sup>9+</sup>
M
mayunteng_1 已提交
20

M
mayunteng_1 已提交
21
injectKeyEvent({ KeyEvent: KeyEvent }): void;
M
mayunteng_1 已提交
22 23 24 25 26 27 28

注入按键,KeyEvent为注入按键的描述信息。

**系统能力:** SystemCapability.MultimodalInput.Input.InputSimulator

**参数:**

M
mayunteng_1 已提交
29 30 31
| 参数     | 类型                  | 必填 | 说明               |
| -------- | --------------------- | ---- | ------------------ |
| KeyEvent | [KeyEvent](#keyevent) | 是   | 注入按键的描述信息 |
M
mayunteng_1 已提交
32 33 34

**示例:**

M
mayunteng_1 已提交
35 36 37
```
try {
  var keyEvent = {
M
mayunteng_1 已提交
38 39 40 41
    isPressed: true,
    keyCode: 2,
    keyDownDuration: 0,
    isIntercepted: false
M
mayunteng_1 已提交
42 43 44 45 46 47 48 49 50 51 52
  }
  inputEventClient.injectKeyEvent({ KeyEvent: keyEvent });
  var keyEvent1 = {
    isPressed: false,
    keyCode: 2,
    keyDownDuration: 0,
    isIntercepted: false
  };
  inputEventClient.injectKeyEvent({ KeyEvent: keyEvent1 });
} catch (error) {
  console.info("injectKeyEvent " + error.code + " " + error.message);
M
mayunteng_1 已提交
53 54 55 56 57 58
}
```


## KeyEvent

H
HelloCrease 已提交
59
注入按键的描述信息。
H
hungry_feiwei 已提交
60

H
HelloCrease 已提交
61
**系统能力:** SystemCapability.MultimodalInput.Input.InputSimulator
M
mayunteng_1 已提交
62

H
HelloCrease 已提交
63 64 65
| 参数              | 类型      | 必填   | 说明        |
| --------------- | ------- | ---- | --------- |
| isPressed       | boolean | 是    | 按键是否按下    |
H
hungry_feiwei 已提交
66
| keyCode         | number  | 是    | 按键键值      |
H
HelloCrease 已提交
67 68
| keyDownDuration | number  | 是    | 按键按下持续时间  |
| isIntercepted   | boolean | 是    | 按键是否可以被拦截 |
M
mayunteng_1 已提交
69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96

## inputEventClient.injectEvent<sup>(deprecated)</sup>

injectEvent({KeyEvent: KeyEvent}): void

注入按键,KeyEvent为注入按键的描述信息。

从API version 9 开始不再维护,建议使用[inputEventClient.injectKeyEvent](#inputEventClientinjectKeyEvent9)代替。

**系统能力:** SystemCapability.MultimodalInput.Input.InputSimulator

**参数:**

| 参数     | 类型                  | 必填 | 说明               |
| -------- | --------------------- | ---- | ------------------ |
| KeyEvent | [KeyEvent](#keyevent) | 是   | 注入按键的描述信息 |

**示例:**

```js
let keyEvent = {
    isPressed: true,
    keyCode: 2,
    keyDownDuration: 0,
    isIntercepted: false
}
let res = inputEventClient.injectEvent({KeyEvent: keyEvent});
```