js-apis-pointer.md 13.2 KB
Newer Older
L
liuwei 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14
# 鼠标指针

鼠标指针管理模块,用于提供鼠标指针相关属性接口。

> **说明**:
>
> 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

## 导入模块

```js
import pointer from '@ohos.multimodalInput.pointer';
```

M
mayunteng_1 已提交
15
## pointer.setPointerVisibele<sup>9+</sup>
L
liuwei 已提交
16

L
liuwei 已提交
17
setPointerVisible(visible: boolean, callback: AsyncCallback&lt;void&gt;): void
L
liuwei 已提交
18

M
mayunteng_1 已提交
19
设置鼠标指针显示或者隐藏,使用callback异步回调。
L
liuwei 已提交
20 21 22 23 24

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

**参数**

H
HelloCrease 已提交
25 26 27 28
| 参数       | 类型                        | 必填   | 说明                                       |
| -------- | ------------------------- | ---- | ---------------------------------------- |
| visible  | boolean                   | 是    | 鼠标指针显示或者隐藏状态,true: 鼠标指针显示; false: 鼠标指针隐藏。 |
| callback | AsyncCallback&lt;void&gt; | 是    | 回调函数。当设置鼠标显示或隐藏成功,err为undefined,否则为错误对象。 |
L
liuwei 已提交
29 30 31 32 33

**示例**

```js
pointer.setPointerVisible(true, (err, data) => {
M
mayunteng_1 已提交
34 35 36 37 38
  if (err) {
    console.log(`set pointer visible failed. err=${JSON.stringify(err)}`);
    return;
  }
  console.log(`set pointer visible success.`);
L
liuwei 已提交
39 40 41
);
```

M
mayunteng_1 已提交
42
## pointer.setPointerVisible<sup>9+</sup>
L
liuwei 已提交
43

L
liuwei 已提交
44
setPointerVisible(visible: boolean): Promise&lt;void&gt;
L
liuwei 已提交
45 46 47 48 49 50 51

设置鼠标指针显示或者隐藏,使用Promise方式作为异步方法。

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

**参数**

H
HelloCrease 已提交
52 53 54
| 参数      | 类型      | 必填   | 说明                                       |
| ------- | ------- | ---- | ---------------------------------------- |
| visible | boolean | 是    | 鼠标指针显示或者隐藏状态,true: 鼠标指针显示; false: 鼠标指针隐藏。 |
L
liuwei 已提交
55 56 57

**返回值**

H
HelloCrease 已提交
58 59
| 参数                  | 说明                  |
| ------------------- | ------------------- |
L
liuwei 已提交
60 61 62 63 64
| Promise&lt;void&gt; | Promise实例,用于异步获取结果。 |

**示例**

```js
M
mayunteng_1 已提交
65 66 67 68
pointer.setPointerVisible(false).then(data => {
  console.log(`set mouse pointer visible success`);
}, data => {
  console.log(`set mouse pointer visible failed err=${JSON.stringify(data)}`);
L
liuwei 已提交
69 70 71
});
```

M
mayunteng_1 已提交
72
## pointer.isPointerVisible<sup>9+</sup>
L
liuwei 已提交
73

L
liuwei 已提交
74
isPointerVisible(callback: AsyncCallback&lt;boolean&gt;): void
L
liuwei 已提交
75

M
mayunteng_1 已提交
76
获取鼠标指针显示或隐藏状态,使用callback异步回调。
L
liuwei 已提交
77 78 79 80 81

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

**参数**

H
HelloCrease 已提交
82 83 84
| 参数       | 类型                           | 必填   | 说明             |
| -------- | ---------------------------- | ---- | -------------- |
| callback | AsyncCallback&lt;boolean&gt; | 是    | 回调函数,异步返回查询结果。 |
L
liuwei 已提交
85 86 87 88 89

**示例**

```js
pointer.isPointerVisible((visible)=>{
M
mayunteng_1 已提交
90
  console.log("The mouse pointer visible attributes is " + visible);
L
liuwei 已提交
91 92 93
});
```

M
mayunteng_1 已提交
94
## pointer.isPointerVisible<sup>9+</sup>
L
liuwei 已提交
95 96 97

isPointerVisible(): Promise&lt;boolean&gt;

L
liuwei 已提交
98
获取鼠标指针显示或隐藏状态,使用Promise方式作为异步方法。
L
liuwei 已提交
99 100 101 102 103

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

**返回值**

H
HelloCrease 已提交
104 105
| 参数                     | 说明                  |
| ---------------------- | ------------------- |
L
liuwei 已提交
106 107 108 109 110 111
| Promise&lt;boolean&gt; | Promise实例,用于异步获取结果。 |

**示例**

```js
pointer.isPointerVisible().then( data => {
M
mayunteng_1 已提交
112
  console.log(`isPointerThen success data=${JSON.stringify(data)}`);
L
liuwei 已提交
113 114
});
```
115 116 117

## pointer.setPointerSpeed<sup>9+</sup>

M
mayunteng_1 已提交
118
setPointerSpeed(speed: number, callback: AsyncCallback&lt;void&gt;): void
119

M
mayunteng_1 已提交
120
设置鼠标移动速度,使用callback异步回调。
121 122 123 124 125

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

**参数**

H
HelloCrease 已提交
126 127 128 129
| 参数       | 类型                        | 必填   | 说明                                    |
| -------- | ------------------------- | ---- | ------------------------------------- |
| speed    | number                    | 是    | 鼠标移动速度设置挡位值1-11,最大值:11,最小值:1,标准值:5。   |
| callback | AysncCallback&lt;void&gt; | 是    | 回调函数。当设置鼠标速度成功,err为undefined,否则为错误对象。 |
130 131 132 133 134

**示例**

```js
pointer.setPointerSpeed(5, (err, data) => {
M
mayunteng_1 已提交
135 136 137 138 139
  if (err) {
    console.log(`set pointer speed failed. err=${JSON.stringify(err)}`);
    return;
  }
  console.log(`set pointer speed success.`);
140 141 142 143 144 145 146
);
```

## pointer.setPointerSpeed<sup>9+</sup>

setPointerSpeed(speed: number): Promise&lt;void&gt;

M
mayunteng_1 已提交
147
设置鼠标移动速度,使用Promise异步回调。
148 149 150 151 152

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

**参数**

H
HelloCrease 已提交
153 154 155
| 参数    | 类型     | 必填   | 说明                                  |
| ----- | ------ | ---- | ----------------------------------- |
| speed | number | 是    | 鼠标移动速度设置挡位值1-11,最大值:11,最小值:1,标准值:5。 |
156 157 158

**返回值**

H
HelloCrease 已提交
159 160
| 参数                  | 说明               |
| ------------------- | ---------------- |
M
mayunteng_1 已提交
161
| Promise&lt;void&gt; | 无返回结果的Promise对象。 |
162 163 164 165

**示例**

```js
M
mayunteng_1 已提交
166 167 168 169
pointer.setPointerSpeed(5).then(data => {
  console.log(`set pointer speed success`);
}, err => {
  console.log(`set pointer speed failed err=${JSON.stringify(err)}`);
170 171 172 173 174 175 176
});
```

## pointer.getPointerSpeed<sup>9+</sup>

getPointerSpeed(callback: AsyncCallback&lt;number&gt;): void

M
mayunteng_1 已提交
177
获取当前鼠标移动速度,使用callback异步回调。
178 179 180 181 182

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

**参数**

H
HelloCrease 已提交
183 184 185
| 参数       | 类型                          | 必填   | 说明             |
| -------- | --------------------------- | ---- | -------------- |
| callback | AsyncCallback&lt;number&gt; | 是    | 回调函数,异步返回查询结果。 |
186 187 188 189 190

**示例**

```js
pointer.getPointerSpeed((speed)=>{
M
mayunteng_1 已提交
191
  console.log("The pointer speed is " + speed);
192 193 194 195 196 197 198
});
```

## pointer.getPointerSpeed<sup>9+</sup>

getPointerSpeed(): Promise&lt;number&gt;

M
mayunteng_1 已提交
199
获取当前鼠标移动速度,使用Promise异步回调。
200 201 202 203 204

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

**返回值**

H
HelloCrease 已提交
205 206
| 参数                    | 说明                  |
| --------------------- | ------------------- |
207 208 209 210 211 212
| Promise&lt;number&gt; | Promise实例,用于异步获取结果。 |

**示例**

```js
pointer.getPointerSpeed().then( data => {
M
mayunteng_1 已提交
213
  console.log(`getPointerSpeed success data=${JSON.stringify(data)}`);
214 215 216 217 218
});
```

## pointer.getPointerStyle<sup>9+</sup>

219
getPointerStyle(windowId: number, callback: AsyncCallback&lt;PointerStyle&gt;): void
220

M
mayunteng_1 已提交
221
获取鼠标样式类型,使用callback异步回调。
222 223 224 225 226

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

**参数**

H
HelloCrease 已提交
227 228 229 230
| 参数       | 类型                                       | 必填   | 说明             |
| -------- | ---------------------------------------- | ---- | -------------- |
| windowId | number                                   | 是    | 输入设备的窗口id。     |
| callback | AsyncCallback&lt;[PointerStyle](#pointerstyle9)&gt; | 是    | 回调函数,异步返回查询结果。 |
231 232 233 234

**示例**

```js
M
mayunteng_1 已提交
235
// 获取设备的鼠标样式。
236
import window from '@ohos.window';
M
mayunteng_1 已提交
237 238 239 240 241 242 243 244 245
var windowClass = null;
window.getTopWindow((err, data) => {
  windowClass = data;
  windowClass.getProperties((err, data) => {
    var windowId = data.id;
    pointer.getPointerStyle(windowId, (err, ret) => {
      console.log("The mouse pointer style is: " + ret);
    });
  });
246 247 248 249 250
});
```

## pointer.getPointerStyle<sup>9+</sup>

251
getPointerStyle(windowId: number): Promise&lt;PointerStyle&gt;
252 253 254 255 256 257 258

获取鼠标样式类型,使用Promise方式作为异步方法。

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

**参数**

H
HelloCrease 已提交
259 260 261
| 参数                                       | 说明                  |
| ---------------------------------------- | ------------------- |
| Promise&lt;[PointerStyle](#pointerstyle9)&gt; | Promise实例,用于异步获取结果。 |
262 263 264 265 266


**示例**

```js
M
mayunteng_1 已提交
267
// 获取设备的鼠标样式。
268
import window from '@ohos.window';
M
mayunteng_1 已提交
269 270 271 272 273 274 275 276 277
var windowClass = null;
window.getTopWindow((err, data) => {
  windowClass = data;
  windowClass.getProperties((err, data) => {
    var windowId = data.id;
    pointer.getPointerStyle(windowId).then((ret) => {
      console.log("The mouse pointer style is: " + ret);
    });
  });
278 279 280 281 282
});
```

## pointer.setPointerStyle<sup>9+</sup>

283
setPointerStyle(windowId: number, pointerStyle: PointerStyle, callback: AsyncCallback&lt;void&gt;): void
284

M
mayunteng_1 已提交
285
设置鼠标的样式类型,使用callback异步回调。
286 287 288 289 290

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

**参数**

H
HelloCrease 已提交
291 292 293 294 295
| 参数           | 类型                             | 必填   | 说明                                  |
| ------------ | ------------------------------ | ---- | ----------------------------------- |
| windowId     | number                         | 是    | 输入设备的窗口id。                          |
| pointerStyle | [PointerStyle](#pointerstyle9) | 是    | 鼠标样式id。                             |
| callback     | AysncCallback&lt;void&gt;      | 是    | 回调函数。当设置样式成功,err为undefined,否则为错误对象。 |
296 297 298 299

**示例**

```js
M
mayunteng_1 已提交
300
// 设置设备的鼠标样式。
301
import window from '@ohos.window';
M
mayunteng_1 已提交
302 303 304 305 306 307 308 309 310
var windowClass = null;
window.getTopWindow((err, data) => {
  windowClass = data;
  windowClass.getProperties((err, data) => {
    var windowId = data.id;
    pointer.setPointerStyle(windowId, pointer.PointerStyle.CROSS, (err) => {
      console.log(`Set mouse pointer style success.`);
    });
  });
311 312 313 314
});
```
## pointer.setPointerStyle<sup>9+</sup>

315
setPointerStyle(windowId: number, pointerStyle: PointerStyle): Promise&lt;void&gt;
316 317 318 319 320 321 322

设置鼠标的样式类型,使用Promise方式作为异步方法。

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

**参数**

H
HelloCrease 已提交
323 324 325 326 327
| 参数                  | 类型                             | 必填   | 说明               |
| ------------------- | ------------------------------ | ---- | ---------------- |
| windowId            | number                         | 是    | 输入设备的窗口id。       |
| pointerStyle        | [PointerStyle](#pointerstyle9) | 是    | 鼠标样式id。          |
| Promise&lt;void&gt; | void                           | 是    | 无返回结果的Promise对象。 |
328 329 330 331

**示例**

```js
M
mayunteng_1 已提交
332
// 设置设备的鼠标样式。
333
import window from '@ohos.window';
M
mayunteng_1 已提交
334 335 336 337 338 339 340 341 342
var windowClass = null;
window.getTopWindow((err, data) => {
  windowClass = data;
  windowClass.getProperties((err, data) => {
    var windowId = data.id;
    pointer.setPointerStyle(windowId, pointer.PointerStyle.CROSS).then(() => {
      console.log(`Set mouse pointer style success`);
    });
  });
343 344 345 346 347 348 349 350
});
```
## PointerStyle<sup>9+</sup>

定义鼠标样式类型。

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

H
HelloCrease 已提交
351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391
| 名称                               | 值    | 说明     |
| -------------------------------- | ---- | ------ |
| DEFAULT                          | 0    | 默认     |
| EAST                             | 1    | 向东箭头   |
| WEST                             | 2    | 向西箭头   |
| SOUTH                            | 3    | 向南箭头   |
| NORTH                            | 4    | 向北箭头   |
| WEST_EAST                        | 5    | 向西东箭头  |
| NORTH_SOUTH                      | 6    | 向北南箭头  |
| NORTH_EAST                       | 7    | 向东北箭头  |
| NORTH_WEST                       | 8    | 向西北箭头  |
| SOUTH_EAST                       | 9    | 向东南箭头  |
| SOUTH_WEST                       | 10   | 向西南箭头  |
| NORTH_EAST_SOUTH_WEST            | 11   | 东北西南调整 |
| NORTH_WEST_SOUTH_EAST            | 12   | 西北东南调整 |
| CROSS                            | 13   | 准确选择   |
| CURSOR_COPY                      | 14   | 拷贝     |
| CURSOR_FORBID                    | 15   | 不可用    |
| COLOR_SUCKER                     | 16   | 滴管     |
| HAND_GRABBING                    | 17   | 并拢的手   |
| HAND_OPEN                        | 18   | 张开的手   |
| HAND_POINTING                    | 19   | 手形指针   |
| HELP                             | 20   | 帮助选择   |
| MOVE                             | 21   | 移动     |
| RESIZE_LEFT_RIGHT                | 22   | 内部左右调整 |
| RESIZE_UP_DOWN                   | 23   | 内部上下调整 |
| SCREENSHOT_CHOOSE                | 24   | 截图十字准星 |
| SCREENSHOT_CURSOR                | 25   | 截图     |
| TEXT_CURSOR                      | 26   | 文本选择   |
| ZOOM_IN                          | 27   | 放大     |
| ZOOM_OUT                         | 28   | 缩小     |
| MIDDLE_BTN_EAST                  | 29   | 向东滚动   |
| MIDDLE_BTN_WEST                  | 30   | 向西滚动   |
| MIDDLE_BTN_SOUTH                 | 31   | 向南滚动   |
| MIDDLE_BTN_NORTH                 | 32   | 向北滚动   |
| MIDDLE_BTN_NORTH_SOUTH           | 33   | 向北南滚动  |
| MIDDLE_BTN_NORTH_EAST            | 34   | 向东北滚动  |
| MIDDLE_BTN_NORTH_WEST            | 35   | 向西北滚动  |
| MIDDLE_BTN_SOUTH_EAST            | 36   | 向东南滚动  |
| MIDDLE_BTN_SOUTH_WEST            | 37   | 向西南滚动  |
| MIDDLE_BTN_NORTH_SOUTH_WEST_EAST | 38   | 四向锥形移动 |
392 393