1# 鼠标光标控制
2
3控制鼠标光标的显示样式。
4
5>  **说明:**
6>
7>  从API Version 11开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
8
9
10## cursorControl
11
12### setCursor
13
14setCursor(value: PointerStyle): void
15
16**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
17
18方法语句中可使用的全局接口,调用此接口可以更改当前的鼠标光标样式。
19
20**参数:**
21
22| 名称 | 类型 | 必填 | 描述 |
23| ----- | ------ | ---- | ---- |
24| value | [PointerStyle](../../apis-input-kit/js-apis-pointer.md#pointerstyle) | 是   | 设置的鼠标样式。 |
25
26
27### restoreDefault
28
29restoreDefault(): void
30
31**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
32
33方法语句中可使用的全局接口,调用此接口可以将鼠标光标恢复成默认的箭头光标样式。
34
35
36## 示例
37
38该示例通过setCursor实现了鼠标更改当前光标样式。
39
40> **说明:**
41>
42> 直接使用cursorControl可能导致实例不明确的问题,建议使用[getUIContext](../js-apis-arkui-UIContext.md#uicontext)获取UIContext实例,并使用[getCursorController](../js-apis-arkui-UIContext.md#getcursorcontroller12)获取绑定实例的cursorControl。
43
44```ts
45// xxx.ets
46import { pointer } from '@kit.InputKit';
47
48@Entry
49@Component
50struct CursorControlExample {
51  @State text: string = ''
52  controller: TextInputController = new TextInputController()
53
54  build() {
55    Column() {
56      Row().height(200).width(200).backgroundColor(Color.Green).position({x: 150 ,y:70})
57        .onHover((flag) => {
58          if (flag) {
59            // 建议使用this.getUIContext().getCursorController().setCursor()
60            cursorControl.setCursor(pointer.PointerStyle.EAST)
61          } else {
62            // 建议使用this.getUIContext().getCursorController().restoreDefault()
63            cursorControl.restoreDefault()
64          }
65        })
66      Row().height(200).width(200).backgroundColor(Color.Blue).position({x: 220 ,y:120})
67        .onHover((flag) => {
68          if (flag) {
69            // 建议使用this.getUIContext().getCursorController().setCursor()
70            cursorControl.setCursor(pointer.PointerStyle.WEST)
71          } else {
72            // 建议使用this.getUIContext().getCursorController().restoreDefault()
73            cursorControl.restoreDefault()
74          }
75        })
76    }.width('100%')
77  }
78}
79```
80示意图:
81
82当鼠标悬浮在蓝色区域时,显示:向西箭头光标
83
84![cursor_blue](figures/cursor_blue.jpg)
85
86当鼠标悬浮在绿色区域时,显示:向东箭头光标
87
88![cursor_green](figures/cursor_green.jpg)