1# oh_input_manager.h 2 3<!--Kit: Input Kit--> 4<!--Subsystem: MultimodalInput--> 5<!--Owner: @zhaoxueyuan--> 6<!--Designer: @hanruofei--> 7<!--Tester: @Lyuxin--> 8<!--Adviser: @Brilliantry_Rui--> 9 10## 概述 11 12提供事件注入和关键状态查询等功能。 13 14**引用文件:** <multimodalinput/oh_input_manager.h> 15 16**库:** libohinput.so 17 18**系统能力:** SystemCapability.MultimodalInput.Input.Core 19 20**起始版本:** 12 21 22**相关模块:** [input](capi-input.md) 23 24## 汇总 25 26### 结构体 27 28| 名称 | typedef关键字 | 描述 | 29| -- | -- | -- | 30| [Input_InterceptorEventCallback](capi-input-input-interceptoreventcallback.md) | Input_InterceptorEventCallback | 拦截回调事件结构体,拦截鼠标事件、触屏事件和轴事件。 | 31| [Input_DeviceListener](capi-input-input-devicelistener.md) | Input_DeviceListener | 定义一个结构体用于监听设备热插拔。 | 32| [Input_KeyState](capi-input-input-keystate.md) | Input_KeyState | 定义按键信息,用于标识按键行为。例如,“Ctrl”按键信息包含键值和键类型。 | 33| [Input_KeyEvent](capi-input-input-keyevent.md) | Input_KeyEvent | 要注入的按键事件。 | 34| [Input_MouseEvent](capi-input-input-mouseevent.md) | Input_MouseEvent | 要注入的鼠标事件。 | 35| [Input_TouchEvent](capi-input-input-touchevent.md) | Input_TouchEvent | 要注入的触屏事件。 | 36| [Input_AxisEvent](capi-input-input-axisevent.md) | Input_AxisEvent | 轴事件。 | 37| [Input_Hotkey](capi-input-input-hotkey.md) | Input_Hotkey | 定义快捷键结构体。 | 38| [Input_DeviceInfo](capi-input-input-deviceinfo.md) | Input_DeviceInfo | 输入设备信息。 | 39| [Input_InterceptorOptions](capi-input-input-interceptoroptions.md) | Input_InterceptorOptions | 事件拦截选项。 | 40 41### 枚举 42 43| 名称 | typedef关键字 | 描述 | 44| -- | -- | -- | 45| [Input_KeyStateAction](#input_keystateaction) | Input_KeyStateAction | 按键状态的枚举值。 | 46| [Input_KeyEventAction](#input_keyeventaction) | Input_KeyEventAction | 按键事件类型的枚举值。 | 47| [Input_MouseEventAction](#input_mouseeventaction) | Input_MouseEventAction | 鼠标动作的枚举值。 | 48| [InputEvent_MouseAxis](#inputevent_mouseaxis) | InputEvent_MouseAxis | 鼠标轴事件类型。 | 49| [Input_MouseEventButton](#input_mouseeventbutton) | Input_MouseEventButton | 鼠标按键的枚举值。 | 50| [Input_TouchEventAction](#input_toucheventaction) | Input_TouchEventAction | 触屏动作的枚举值。 | 51| [Input_InjectionStatus](#input_injectionstatus) | Input_InjectionStatus | 注入权限状态枚举值。 | 52| [InputEvent_SourceType](#inputevent_sourcetype) | InputEvent_SourceType | 输入事件源类型。 | 53| [Input_KeyboardType](#input_keyboardtype) | Input_KeyboardType | 输入设备的键盘类型。 | 54| [Input_Result](#input_result) | Input_Result | 错误码枚举值。 | 55 56### 函数 57 58| 名称 | typedef关键字 | 描述 | 59| -- | -- | -- | 60| [typedef void (\*Input_HotkeyCallback)(Input_Hotkey* hotkey)](#input_hotkeycallback) | Input_HotkeyCallback | 回调函数,用于回调快捷键事件。 | 61| [typedef void (\*Input_KeyEventCallback)(const Input_KeyEvent* keyEvent)](#input_keyeventcallback) | Input_KeyEventCallback | 按键事件的回调函数,keyEvent的生命周期为回调函数内。 | 62| [typedef void (\*Input_MouseEventCallback)(const Input_MouseEvent* mouseEvent)](#input_mouseeventcallback) | Input_MouseEventCallback | 鼠标事件的回调函数,mouseEvent的生命周期为回调函数内。 | 63| [typedef void (\*Input_TouchEventCallback)(const Input_TouchEvent* touchEvent)](#input_toucheventcallback) | Input_TouchEventCallback | 触屏事件的回调函数,touchEvent的生命周期为回调函数内。 | 64| [typedef void (\*Input_AxisEventCallback)(const Input_AxisEvent* axisEvent)](#input_axiseventcallback) | Input_AxisEventCallback | 轴事件的回调函数,axisEvent的生命周期为回调函数内。 | 65| [typedef void (\*Input_DeviceAddedCallback)(int32_t deviceId)](#input_deviceaddedcallback) | Input_DeviceAddedCallback | 回调函数,用于回调输入设备的热插事件。 | 66| [typedef void (\*Input_DeviceRemovedCallback)(int32_t deviceId)](#input_deviceremovedcallback) | Input_DeviceRemovedCallback | 回调函数,用于回调输入设备的热拔事件。 | 67| [typedef void (\*Input_InjectAuthorizeCallback)(Input_InjectionStatus authorizedStatus)](#input_injectauthorizecallback) | Input_InjectAuthorizeCallback | 回调函数,用于获取注入权限状态。 | 68| [Input_Result OH_Input_GetKeyState(struct Input_KeyState* keyState)](#oh_input_getkeystate) | - | 查询按键状态的枚举对象。 | 69| [struct Input_KeyState* OH_Input_CreateKeyState()](#oh_input_createkeystate) | - | 创建按键状态的枚举对象。 | 70| [void OH_Input_DestroyKeyState(struct Input_KeyState** keyState)](#oh_input_destroykeystate) | - | 销毁按键状态的枚举对象。 | 71| [void OH_Input_SetKeyCode(struct Input_KeyState* keyState, int32_t keyCode)](#oh_input_setkeycode) | - | 设置按键状态对象的键值。 | 72| [int32_t OH_Input_GetKeyCode(const struct Input_KeyState* keyState)](#oh_input_getkeycode) | - | 获取按键状态对象的键值。 | 73| [void OH_Input_SetKeyPressed(struct Input_KeyState* keyState, int32_t keyAction)](#oh_input_setkeypressed) | - | 设置按键状态对象的按键是否按下。 | 74| [int32_t OH_Input_GetKeyPressed(const struct Input_KeyState* keyState)](#oh_input_getkeypressed) | - | 获取按键状态对象的按键是否按下。 | 75| [void OH_Input_SetKeySwitch(struct Input_KeyState* keyState, int32_t keySwitch)](#oh_input_setkeyswitch) | - | 设置按键状态对象的按键开关。 | 76| [int32_t OH_Input_GetKeySwitch(const struct Input_KeyState* keyState)](#oh_input_getkeyswitch) | - | 获取按键状态对象的按键开关。 | 77| [int32_t OH_Input_InjectKeyEvent(const struct Input_KeyEvent* keyEvent)](#oh_input_injectkeyevent) | - | 注入按键事件。 | 78| [struct Input_KeyEvent* OH_Input_CreateKeyEvent()](#oh_input_createkeyevent) | - | 创建按键事件对象。 | 79| [void OH_Input_DestroyKeyEvent(struct Input_KeyEvent** keyEvent)](#oh_input_destroykeyevent) | - | 销毁按键事件对象。 | 80| [void OH_Input_SetKeyEventAction(struct Input_KeyEvent* keyEvent, int32_t action)](#oh_input_setkeyeventaction) | - | 设置按键事件类型。 | 81| [int32_t OH_Input_GetKeyEventAction(const struct Input_KeyEvent* keyEvent)](#oh_input_getkeyeventaction) | - | 获取按键事件类型。 | 82| [void OH_Input_SetKeyEventKeyCode(struct Input_KeyEvent* keyEvent, int32_t keyCode)](#oh_input_setkeyeventkeycode) | - | 设置按键事件的键值。 | 83| [int32_t OH_Input_GetKeyEventKeyCode(const struct Input_KeyEvent* keyEvent)](#oh_input_getkeyeventkeycode) | - | 获取按键事件的键值。 | 84| [void OH_Input_SetKeyEventActionTime(struct Input_KeyEvent* keyEvent, int64_t actionTime)](#oh_input_setkeyeventactiontime) | - | 设置按键事件发生的时间。 | 85| [int64_t OH_Input_GetKeyEventActionTime(const struct Input_KeyEvent* keyEvent)](#oh_input_getkeyeventactiontime) | - | 获取按键事件发生的时间。 | 86| [void OH_Input_SetKeyEventWindowId(struct Input_KeyEvent* keyEvent, int32_t windowId)](#oh_input_setkeyeventwindowid) | - | 设置按键事件的窗口Id。 | 87| [int32_t OH_Input_GetKeyEventWindowId(const struct Input_KeyEvent* keyEvent)](#oh_input_getkeyeventwindowid) | - | 获取按键事件的窗口Id。 | 88| [void OH_Input_SetKeyEventDisplayId(struct Input_KeyEvent* keyEvent, int32_t displayId)](#oh_input_setkeyeventdisplayid) | - | 设置按键事件的屏幕Id。 | 89| [int32_t OH_Input_GetKeyEventDisplayId(const struct Input_KeyEvent* keyEvent)](#oh_input_getkeyeventdisplayid) | - | 获取按键事件的屏幕Id。 | 90| [struct Input_MouseEvent* OH_Input_CreateMouseEvent()](#oh_input_createmouseevent) | - | 创建鼠标事件对象。 | 91| [void OH_Input_DestroyMouseEvent(struct Input_MouseEvent** mouseEvent)](#oh_input_destroymouseevent) | - | 销毁鼠标事件对象。 | 92| [void OH_Input_SetMouseEventAction(struct Input_MouseEvent* mouseEvent, int32_t action)](#oh_input_setmouseeventaction) | - | 设置鼠标事件的动作。 | 93| [int32_t OH_Input_GetMouseEventAction(const struct Input_MouseEvent* mouseEvent)](#oh_input_getmouseeventaction) | - | 获取鼠标事件的动作。 | 94| [void OH_Input_SetMouseEventDisplayX(struct Input_MouseEvent* mouseEvent, int32_t displayX)](#oh_input_setmouseeventdisplayx) | - | 设置鼠标事件以指定屏幕左上角为原点的相对坐标系的X坐标。 | 95| [int32_t OH_Input_GetMouseEventDisplayX(const struct Input_MouseEvent* mouseEvent)](#oh_input_getmouseeventdisplayx) | - | 获取鼠标事件以指定屏幕左上角为原点的相对坐标系的X坐标。 | 96| [void OH_Input_SetMouseEventDisplayY(struct Input_MouseEvent* mouseEvent, int32_t displayY)](#oh_input_setmouseeventdisplayy) | - | 设置鼠标事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 | 97| [int32_t OH_Input_GetMouseEventDisplayY(const struct Input_MouseEvent* mouseEvent)](#oh_input_getmouseeventdisplayy) | - | 获取鼠标事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 | 98| [void OH_Input_SetMouseEventButton(struct Input_MouseEvent* mouseEvent, int32_t button)](#oh_input_setmouseeventbutton) | - | 设置鼠标事件的按键。 | 99| [int32_t OH_Input_GetMouseEventButton(const struct Input_MouseEvent* mouseEvent)](#oh_input_getmouseeventbutton) | - | 获取鼠标事件的按键。 | 100| [void OH_Input_SetMouseEventAxisType(struct Input_MouseEvent* mouseEvent, int32_t axisType)](#oh_input_setmouseeventaxistype) | - | 设置鼠标轴事件的类型。 | 101| [int32_t OH_Input_GetMouseEventAxisType(const struct Input_MouseEvent* mouseEvent)](#oh_input_getmouseeventaxistype) | - | 获取鼠标轴事件的类型。 | 102| [void OH_Input_SetMouseEventAxisValue(struct Input_MouseEvent* mouseEvent, float axisValue)](#oh_input_setmouseeventaxisvalue) | - | 设置鼠标轴事件的值。 | 103| [float OH_Input_GetMouseEventAxisValue(const struct Input_MouseEvent* mouseEvent)](#oh_input_getmouseeventaxisvalue) | - | 获取鼠标轴事件的值。 | 104| [void OH_Input_SetMouseEventActionTime(struct Input_MouseEvent* mouseEvent, int64_t actionTime)](#oh_input_setmouseeventactiontime) | - | 设置鼠标事件发生的时间。 | 105| [int64_t OH_Input_GetMouseEventActionTime(const struct Input_MouseEvent* mouseEvent)](#oh_input_getmouseeventactiontime) | - | 获取鼠标事件发生的时间。 | 106| [void OH_Input_SetMouseEventWindowId(struct Input_MouseEvent* mouseEvent, int32_t windowId)](#oh_input_setmouseeventwindowid) | - | 设置鼠标事件的窗口Id。 | 107| [int32_t OH_Input_GetMouseEventWindowId(const struct Input_MouseEvent* mouseEvent)](#oh_input_getmouseeventwindowid) | - | 获取鼠标事件的窗口Id。 | 108| [void OH_Input_SetMouseEventDisplayId(struct Input_MouseEvent* mouseEvent, int32_t displayId)](#oh_input_setmouseeventdisplayid) | - | 设置鼠标事件的屏幕Id。 | 109| [struct Input_TouchEvent* OH_Input_CreateTouchEvent()](#oh_input_createtouchevent) | - | 创建触屏事件对象。 | 110| [void OH_Input_DestroyTouchEvent(struct Input_TouchEvent** touchEvent)](#oh_input_destroytouchevent) | - | 销毁触屏事件对象。 | 111| [void OH_Input_SetTouchEventAction(struct Input_TouchEvent* touchEvent, int32_t action)](#oh_input_settoucheventaction) | - | 设置触屏事件的动作。 | 112| [int32_t OH_Input_GetTouchEventAction(const struct Input_TouchEvent* touchEvent)](#oh_input_gettoucheventaction) | - | 获取触屏事件的动作。 | 113| [void OH_Input_SetTouchEventFingerId(struct Input_TouchEvent* touchEvent, int32_t id)](#oh_input_settoucheventfingerid) | - | 设置触屏事件的手指ID。 | 114| [int32_t OH_Input_GetTouchEventFingerId(const struct Input_TouchEvent* touchEvent)](#oh_input_gettoucheventfingerid) | - | 获取触屏事件的手指ID。 | 115| [void OH_Input_SetTouchEventDisplayX(struct Input_TouchEvent* touchEvent, int32_t displayX)](#oh_input_settoucheventdisplayx) | - | 设置触屏事件以指定屏幕左上角为原点的相对坐标系的X坐标。 | 116| [int32_t OH_Input_GetTouchEventDisplayX(const struct Input_TouchEvent* touchEvent)](#oh_input_gettoucheventdisplayx) | - | 获取触屏事件以指定屏幕左上角为原点的相对坐标系的X坐标。 | 117| [void OH_Input_SetTouchEventDisplayY(struct Input_TouchEvent* touchEvent, int32_t displayY)](#oh_input_settoucheventdisplayy) | - | 设置触屏事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 | 118| [int32_t OH_Input_GetTouchEventDisplayY(const struct Input_TouchEvent* touchEvent)](#oh_input_gettoucheventdisplayy) | - | 获取触屏事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 | 119| [void OH_Input_SetTouchEventActionTime(struct Input_TouchEvent* touchEvent, int64_t actionTime)](#oh_input_settoucheventactiontime) | - | 设置触屏事件发生的时间。 | 120| [int64_t OH_Input_GetTouchEventActionTime(const struct Input_TouchEvent* touchEvent)](#oh_input_gettoucheventactiontime) | - | 获取触屏事件发生的时间。 | 121| [void OH_Input_SetTouchEventWindowId(struct Input_TouchEvent* touchEvent, int32_t windowId)](#oh_input_settoucheventwindowid) | - | 设置触屏事件的窗口Id。 | 122| [int32_t OH_Input_GetTouchEventWindowId(const struct Input_TouchEvent* touchEvent)](#oh_input_gettoucheventwindowid) | - | 获取触屏事件的窗口Id。 | 123| [void OH_Input_SetTouchEventDisplayId(struct Input_TouchEvent* touchEvent, int32_t displayId)](#oh_input_settoucheventdisplayid) | - | 设置触屏事件的屏幕Id。 | 124| [int32_t OH_Input_GetTouchEventDisplayId(const struct Input_TouchEvent* touchEvent)](#oh_input_gettoucheventdisplayid) | - | 获取触屏事件的屏幕Id。 | 125| [void OH_Input_CancelInjection()](#oh_input_cancelinjection) | - | 取消事件注入并撤销授权。 | 126| [Input_Result OH_Input_RequestInjection(Input_InjectAuthorizeCallback callback)](#oh_input_requestinjection) | - | 当前应用申请注入权限,包括申请注入按键事件[OH_Input_InjectKeyEvent](capi-oh-input-manager-h.md#oh_input_injectkeyevent)、注入触屏事件[OH_Input_InjectTouchEvent](capi-oh-input-manager-h.md#oh_input_injecttouchevent)、注入鼠标事件[OH_Input_InjectMouseEvent](capi-oh-input-manager-h.md#oh_input_injectmouseevent)等注入操作的权限。 | 127| [Input_Result OH_Input_QueryAuthorizedStatus(Input_InjectionStatus* status)](#oh_input_queryauthorizedstatus) | - | 查询当前应用注入的权限状态。 | 128| [Input_AxisEvent* OH_Input_CreateAxisEvent(void)](#oh_input_createaxisevent) | - | 创建轴事件对象实例。 | 129| [Input_Result OH_Input_DestroyAxisEvent(Input_AxisEvent** axisEvent)](#oh_input_destroyaxisevent) | - | 销毁轴事件对象实例。 | 130| [Input_Result OH_Input_SetAxisEventAction(Input_AxisEvent* axisEvent, InputEvent_AxisAction action)](#oh_input_setaxiseventaction) | - | 设置轴事件的动作。 | 131| [Input_Result OH_Input_GetAxisEventAction(const Input_AxisEvent* axisEvent, InputEvent_AxisAction *action)](#oh_input_getaxiseventaction) | - | 获取轴事件的动作。 | 132| [Input_Result OH_Input_SetAxisEventDisplayX(Input_AxisEvent* axisEvent, float displayX)](#oh_input_setaxiseventdisplayx) | - | 设置轴事件以指定屏幕左上角为原点的相对坐标系的X坐标。 | 133| [Input_Result OH_Input_GetAxisEventDisplayX(const Input_AxisEvent* axisEvent, float* displayX)](#oh_input_getaxiseventdisplayx) | - | 获取轴事件以指定屏幕左上角为原点的相对坐标系的X坐标。 | 134| [Input_Result OH_Input_SetAxisEventDisplayY(Input_AxisEvent* axisEvent, float displayY)](#oh_input_setaxiseventdisplayy) | - | 设置轴事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 | 135| [Input_Result OH_Input_GetAxisEventDisplayY(const Input_AxisEvent* axisEvent, float* displayY)](#oh_input_getaxiseventdisplayy) | - | 获取轴事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 | 136| [Input_Result OH_Input_SetAxisEventAxisValue(Input_AxisEvent* axisEvent,InputEvent_AxisType axisType, double axisValue)](#oh_input_setaxiseventaxisvalue) | - | 设置轴事件指定轴类型的轴值。 | 137| [Input_Result OH_Input_GetAxisEventAxisValue(const Input_AxisEvent* axisEvent,InputEvent_AxisType axisType, double* axisValue)](#oh_input_getaxiseventaxisvalue) | - | 获取轴事件指定轴类型的轴值。 | 138| [Input_Result OH_Input_SetAxisEventActionTime(Input_AxisEvent* axisEvent, int64_t actionTime)](#oh_input_setaxiseventactiontime) | - | 设置轴事件发生的时间。 | 139| [Input_Result OH_Input_GetAxisEventActionTime(const Input_AxisEvent* axisEvent, int64_t* actionTime)](#oh_input_getaxiseventactiontime) | - | 获取轴事件发生的时间。 | 140| [Input_Result OH_Input_SetAxisEventType(Input_AxisEvent* axisEvent, InputEvent_AxisEventType axisEventType)](#oh_input_setaxiseventtype) | - | 设置轴事件类型。 | 141| [Input_Result OH_Input_GetAxisEventType(const Input_AxisEvent* axisEvent, InputEvent_AxisEventType* axisEventType)](#oh_input_getaxiseventtype) | - | 获取轴事件类型。 | 142| [Input_Result OH_Input_SetAxisEventSourceType(Input_AxisEvent* axisEvent, InputEvent_SourceType sourceType)](#oh_input_setaxiseventsourcetype) | - | 设置轴事件源类型。 | 143| [Input_Result OH_Input_GetAxisEventSourceType(const Input_AxisEvent* axisEvent, InputEvent_SourceType* sourceType)](#oh_input_getaxiseventsourcetype) | - | 获取轴事件源类型。 | 144| [Input_Result OH_Input_SetAxisEventWindowId(Input_AxisEvent* axisEvent, int32_t windowId)](#oh_input_setaxiseventwindowid) | - | 设置轴事件的窗口Id。 | 145| [Input_Result OH_Input_GetAxisEventWindowId(const Input_AxisEvent* axisEvent, int32_t* windowId)](#oh_input_getaxiseventwindowid) | - | 获取轴事件的窗口Id。 | 146| [Input_Result OH_Input_SetAxisEventDisplayId(Input_AxisEvent* axisEvent, int32_t displayId)](#oh_input_setaxiseventdisplayid) | - | 设置轴事件的屏幕Id。 | 147| [Input_Result OH_Input_GetAxisEventDisplayId(const Input_AxisEvent* axisEvent, int32_t* displayId)](#oh_input_getaxiseventdisplayid) | - | 获取轴事件的屏幕Id。 | 148| [Input_Result OH_Input_AddKeyEventMonitor(Input_KeyEventCallback callback)](#oh_input_addkeyeventmonitor) | - | 添加按键事件监听。 | 149| [Input_Result OH_Input_AddMouseEventMonitor(Input_MouseEventCallback callback)](#oh_input_addmouseeventmonitor) | - | 添加鼠标事件监听,包含鼠标点击,移动,不包含滚轮事件,滚轮事件归属于轴事件。 | 150| [Input_Result OH_Input_AddTouchEventMonitor(Input_TouchEventCallback callback)](#oh_input_addtoucheventmonitor) | - | 添加触屏事件监听。 | 151| [Input_Result OH_Input_AddAxisEventMonitorForAll(Input_AxisEventCallback callback)](#oh_input_addaxiseventmonitorforall) | - | 添加所有类型轴事件监听,轴事件类型定义在[InputEvent_AxisEventType](capi-oh-axis-type-h.md#inputevent_axiseventtype)中。 | 152| [Input_Result OH_Input_AddAxisEventMonitor(InputEvent_AxisEventType axisEventType, Input_AxisEventCallback callback)](#oh_input_addaxiseventmonitor) | - | 添加指定类型的轴事件监听,轴事件类型定义在[InputEvent_AxisEventType](capi-oh-axis-type-h.md#inputevent_axiseventtype)中。 | 153| [Input_Result OH_Input_RemoveKeyEventMonitor(Input_KeyEventCallback callback)](#oh_input_removekeyeventmonitor) | - | 移除按键事件监听。 | 154| [Input_Result OH_Input_RemoveMouseEventMonitor(Input_MouseEventCallback callback)](#oh_input_removemouseeventmonitor) | - | 移除鼠标事件监听。 | 155| [Input_Result OH_Input_RemoveTouchEventMonitor(Input_TouchEventCallback callback)](#oh_input_removetoucheventmonitor) | - | 移除触屏事件监听。 | 156| [Input_Result OH_Input_RemoveAxisEventMonitorForAll(Input_AxisEventCallback callback)](#oh_input_removeaxiseventmonitorforall) | - | 移除所有类型轴事件监听。 | 157| [Input_Result OH_Input_RemoveAxisEventMonitor(InputEvent_AxisEventType axisEventType, Input_AxisEventCallback callback)](#oh_input_removeaxiseventmonitor) | - | 移除指定类型轴事件监听,轴事件类型定义在[InputEvent_AxisEventType](capi-oh-axis-type-h.md#inputevent_axiseventtype)中。 | 158| [Input_Result OH_Input_AddKeyEventInterceptor(Input_KeyEventCallback callback, Input_InterceptorOptions *option)](#oh_input_addkeyeventinterceptor) | - | 添加按键事件的拦截,重复添加只有第一次生效。仅在应用获焦时拦截按键事件。 | 159| [Input_Result OH_Input_AddInputEventInterceptor(Input_InterceptorEventCallback *callback,Input_InterceptorOptions *option)](#oh_input_addinputeventinterceptor) | - | 添加输入事件拦截,包括鼠标、触屏和轴事件,重复添加只有第一次生效。仅命中应用窗口时拦截输入事件。 | 160| [Input_Result OH_Input_RemoveKeyEventInterceptor(void)](#oh_input_removekeyeventinterceptor) | - | 移除按键事件拦截。 | 161| [Input_Result OH_Input_RemoveInputEventInterceptor(void)](#oh_input_removeinputeventinterceptor) | - | 移除输入事件拦截,包括鼠标、触屏和轴事件。 | 162| [Input_Result OH_Input_GetIntervalSinceLastInput(int64_t *timeInterval)](#oh_input_getintervalsincelastinput) | - | 获取距离上次系统输入事件的时间间隔。 | 163| [Input_Hotkey *OH_Input_CreateHotkey(void)](#oh_input_createhotkey) | - | 创建快捷键对象的实例。 | 164| [void OH_Input_DestroyHotkey(Input_Hotkey **hotkey)](#oh_input_destroyhotkey) | - | 销毁快捷键对象的实例。 | 165| [void OH_Input_SetPreKeys(Input_Hotkey *hotkey, int32_t *preKeys, int32_t size)](#oh_input_setprekeys) | - | 设置修饰键。 | 166| [Input_Result OH_Input_GetPreKeys(const Input_Hotkey *hotkey, int32_t **preKeys, int32_t *preKeyCount)](#oh_input_getprekeys) | - | 获取修饰键。 | 167| [void OH_Input_SetFinalKey(Input_Hotkey* hotkey, int32_t finalKey)](#oh_input_setfinalkey) | - | 设置被修饰键。 | 168| [Input_Result OH_Input_GetFinalKey(const Input_Hotkey* hotkey, int32_t *finalKeyCode)](#oh_input_getfinalkey) | - | 获取被修饰键。 | 169| [Input_Hotkey **OH_Input_CreateAllSystemHotkeys(int32_t count)](#oh_input_createallsystemhotkeys) | - | 创建[Input_Hotkey](capi-input-input-hotkey.md)类型实例的数组。 | 170| [void OH_Input_DestroyAllSystemHotkeys(Input_Hotkey **hotkeys, int32_t count)](#oh_input_destroyallsystemhotkeys) | - | 销毁[Input_Hotkey](capi-input-input-hotkey.md)实例数组并回收内存。 | 171| [Input_Result OH_Input_GetAllSystemHotkeys(Input_Hotkey **hotkey, int32_t *count)](#oh_input_getallsystemhotkeys) | - | 获取设置的所有快捷键。 | 172| [void OH_Input_SetRepeat(Input_Hotkey* hotkey, bool isRepeat)](#oh_input_setrepeat) | - | 设置是否上报重复key事件。 | 173| [Input_Result OH_Input_GetRepeat(const Input_Hotkey* hotkey, bool *isRepeat)](#oh_input_getrepeat) | - | 获取是否上报重复key事件。 | 174| [Input_Result OH_Input_AddHotkeyMonitor(const Input_Hotkey* hotkey, Input_HotkeyCallback callback)](#oh_input_addhotkeymonitor) | - | 订阅快捷键事件。此接口在智能穿戴、轻量级智能穿戴设备不生效。 | 175| [Input_Result OH_Input_RemoveHotkeyMonitor(const Input_Hotkey* hotkey, Input_HotkeyCallback callback)](#oh_input_removehotkeymonitor) | - | 取消订阅快捷键。 | 176| [Input_Result OH_Input_RegisterDeviceListener(Input_DeviceListener* listener)](#oh_input_registerdevicelistener) | - | 注册设备热插拔的监听器。 | 177| [Input_Result OH_Input_UnregisterDeviceListener(Input_DeviceListener* listener)](#oh_input_unregisterdevicelistener) | - | 取消注册设备热插拔的监听。 | 178| [Input_Result OH_Input_UnregisterDeviceListeners()](#oh_input_unregisterdevicelisteners) | - | 取消注册所有的设备热插拔的监听。 | 179| [Input_Result OH_Input_GetDeviceIds(int32_t *deviceIds, int32_t inSize, int32_t *outSize)](#oh_input_getdeviceids) | - | 获取所有输入设备的ID列表。 | 180| [Input_Result OH_Input_GetDevice(int32_t deviceId, Input_DeviceInfo **deviceInfo)](#oh_input_getdevice) | - | 获取输入设备信息。 | 181| [Input_DeviceInfo* OH_Input_CreateDeviceInfo(void)](#oh_input_createdeviceinfo) | - | 创建输入设备信息的对象。 | 182| [void OH_Input_DestroyDeviceInfo(Input_DeviceInfo **deviceInfo)](#oh_input_destroydeviceinfo) | - | 销毁输入设备信息的对象。 | 183| [Input_Result OH_Input_GetKeyboardType(int32_t deviceId, int32_t *keyboardType)](#oh_input_getkeyboardtype) | - | 获取输入设备的键盘类型。 | 184| [Input_Result OH_Input_GetDeviceId(Input_DeviceInfo *deviceInfo, int32_t *id)](#oh_input_getdeviceid) | - | 获取输入设备的id。 | 185| [Input_Result OH_Input_GetDeviceName(Input_DeviceInfo *deviceInfo, char **name)](#oh_input_getdevicename) | - | 获取输入设备的名称。 | 186| [Input_Result OH_Input_GetCapabilities(Input_DeviceInfo *deviceInfo, int32_t *capabilities)](#oh_input_getcapabilities) | - | 获取有关输入设备能力信息,比如设备是触摸屏、触控板、键盘等。 | 187| [Input_Result OH_Input_GetDeviceVersion(Input_DeviceInfo *deviceInfo, int32_t *version)](#oh_input_getdeviceversion) | - | 获取输入设备的版本信息。 | 188| [Input_Result OH_Input_GetDeviceProduct(Input_DeviceInfo *deviceInfo, int32_t *product)](#oh_input_getdeviceproduct) | - | 获取输入设备的产品信息。 | 189| [Input_Result OH_Input_GetDeviceVendor(Input_DeviceInfo *deviceInfo, int32_t *vendor)](#oh_input_getdevicevendor) | - | 获取输入设备的厂商信息。 | 190| [Input_Result OH_Input_GetDeviceAddress(Input_DeviceInfo *deviceInfo, char **address)](#oh_input_getdeviceaddress) | - | 获取输入设备的物理地址。 | 191| [Input_Result OH_Input_GetFunctionKeyState(int32_t keyCode, int32_t *state)](#oh_input_getfunctionkeystate) | - | 获取功能键状态。 | 192| [int32_t OH_Input_InjectTouchEvent(const struct Input_TouchEvent* touchEvent)](#oh_input_injecttouchevent) | - | 使用以指定屏幕左上角为原点的相对坐标系的坐标注入触屏事件。 | 193| [int32_t OH_Input_InjectMouseEvent(const struct Input_MouseEvent* mouseEvent)](#oh_input_injectmouseevent) | - | 使用以指定屏幕左上角为原点的相对坐标系的坐标注入鼠标事件。 | 194| [int32_t OH_Input_GetMouseEventDisplayId(const struct Input_MouseEvent* mouseEvent)](#oh_input_getmouseeventdisplayid) | - | 获取鼠标事件的屏幕Id。 | 195| [Input_Result OH_Input_QueryMaxTouchPoints(int32_t *count)](#oh_input_querymaxtouchpoints) | - | 查询设备支持的最大触屏报点数。 | 196| [int32_t OH_Input_InjectMouseEventGlobal(const struct Input_MouseEvent* mouseEvent)](#oh_input_injectmouseeventglobal) | - | 使用以主屏左上角为原点的全局坐标系的坐标注入鼠标事件。 | 197| [void OH_Input_SetMouseEventGlobalX(struct Input_MouseEvent* mouseEvent, int32_t globalX)](#oh_input_setmouseeventglobalx) | - | 设置鼠标事件以主屏左上角为原点的全局坐标系的X坐标。 | 198| [int32_t OH_Input_GetMouseEventGlobalX(const struct Input_MouseEvent* mouseEvent)](#oh_input_getmouseeventglobalx) | - | 获取鼠标事件以主屏左上角为原点的全局坐标系的X坐标。 | 199| [void OH_Input_SetMouseEventGlobalY(struct Input_MouseEvent* mouseEvent, int32_t globalY)](#oh_input_setmouseeventglobaly) | - | 设置鼠标事件以主屏左上角为原点的全局坐标系的Y坐标。 | 200| [int32_t OH_Input_GetMouseEventGlobalY(const struct Input_MouseEvent* mouseEvent)](#oh_input_getmouseeventglobaly) | - | 获取鼠标事件以主屏左上角为原点的全局坐标系的Y坐标。 | 201| [int32_t OH_Input_InjectTouchEventGlobal(const struct Input_TouchEvent* touchEvent)](#oh_input_injecttoucheventglobal) | - | 使用以主屏左上角为原点的全局坐标系的坐标注入触屏事件。 | 202| [void OH_Input_SetTouchEventGlobalX(struct Input_TouchEvent* touchEvent, int32_t globalX)](#oh_input_settoucheventglobalx) | - | 设置触屏事件以主屏左上角为原点的全局坐标系的X坐标。 | 203| [int32_t OH_Input_GetTouchEventGlobalX(const struct Input_TouchEvent* touchEvent)](#oh_input_gettoucheventglobalx) | - | 获取触屏事件以主屏左上角为原点的全局坐标系的X坐标。 | 204| [void OH_Input_SetTouchEventGlobalY(struct Input_TouchEvent* touchEvent, int32_t globalY)](#oh_input_settoucheventglobaly) | - | 设置触屏事件以主屏左上角为原点的全局坐标系的Y坐标。 | 205| [int32_t OH_Input_GetTouchEventGlobalY(const struct Input_TouchEvent* touchEvent)](#oh_input_gettoucheventglobaly) | - | 获取触屏事件以主屏左上角为原点的全局坐标系的Y坐标。 | 206| [Input_Result OH_Input_SetAxisEventGlobalX(struct Input_AxisEvent* axisEvent, int32_t globalX)](#oh_input_setaxiseventglobalx) | - | 设置轴事件以主屏左上角为原点的全局坐标系的X坐标。 | 207| [Input_Result OH_Input_GetAxisEventGlobalX(const Input_AxisEvent* axisEvent, int32_t* globalX)](#oh_input_getaxiseventglobalx) | - | 获取轴事件以主屏左上角为原点的全局坐标系的X坐标。 | 208| [Input_Result OH_Input_SetAxisEventGlobalY(struct Input_AxisEvent* axisEvent, int32_t globalY)](#oh_input_setaxiseventglobaly) | - | 设置轴事件以主屏左上角为原点的全局坐标系的Y坐标。 | 209| [Input_Result OH_Input_GetAxisEventGlobalY(const Input_AxisEvent* axisEvent, int32_t* globalY)](#oh_input_getaxiseventglobaly) | - | 获取轴事件以主屏左上角为原点的全局坐标系的Y坐标。 | 210| [Input_Result OH_Input_GetPointerLocation(int32_t *displayId, double *displayX, double *displayY)](#oh_input_getpointerlocation) | - | 获取鼠标在屏幕上的坐标点。 | 211 212## 枚举类型说明 213 214### Input_KeyStateAction 215 216``` 217enum Input_KeyStateAction 218``` 219 220**描述** 221 222按键状态的枚举值。 223 224**起始版本:** 12 225 226| 枚举项 | 描述 | 227| -- | -- | 228| KEY_DEFAULT = -1 | 默认状态。 | 229| KEY_PRESSED = 0 | 按键按下。 | 230| KEY_RELEASED = 1 | 按键抬起。 | 231| KEY_SWITCH_ON = 2 | 按键开关使能。 | 232| KEY_SWITCH_OFF = 3 | 按键开关去使能。 | 233 234### Input_KeyEventAction 235 236``` 237enum Input_KeyEventAction 238``` 239 240**描述** 241 242按键事件类型的枚举值。 243 244**起始版本:** 12 245 246| 枚举项 | 描述 | 247| -- | -- | 248| KEY_ACTION_CANCEL = 0 | 按键动作取消。 | 249| KEY_ACTION_DOWN = 1 | 按键按下。 | 250| KEY_ACTION_UP = 2 | 按键抬起。 | 251 252### Input_MouseEventAction 253 254``` 255enum Input_MouseEventAction 256``` 257 258**描述** 259 260鼠标动作的枚举值。 261 262**起始版本:** 12 263 264| 枚举项 | 描述 | 265| -- | -- | 266| MOUSE_ACTION_CANCEL = 0 | 取消鼠标动作。 | 267| MOUSE_ACTION_MOVE = 1 | 移动鼠标。 | 268| MOUSE_ACTION_BUTTON_DOWN = 2 | 按下鼠标。 | 269| MOUSE_ACTION_BUTTON_UP = 3 | 抬起鼠标按键。 | 270| MOUSE_ACTION_AXIS_BEGIN = 4 | 鼠标轴事件开始。 | 271| MOUSE_ACTION_AXIS_UPDATE = 5 | 更新鼠标轴事件。 | 272| MOUSE_ACTION_AXIS_END = 6 | 鼠标轴事件结束。 | 273 274### InputEvent_MouseAxis 275 276``` 277enum InputEvent_MouseAxis 278``` 279 280**描述** 281 282鼠标轴事件类型。 283 284**起始版本:** 12 285 286| 枚举项 | 描述 | 287| -- | -- | 288| MOUSE_AXIS_SCROLL_VERTICAL = 0 | 垂直滚动轴。 | 289| MOUSE_AXIS_SCROLL_HORIZONTAL = 1 | 水平滚动轴。 | 290 291### Input_MouseEventButton 292 293``` 294enum Input_MouseEventButton 295``` 296 297**描述** 298 299鼠标按键的枚举值。 300 301**起始版本:** 12 302 303| 枚举项 | 描述 | 304| -- | -- | 305| MOUSE_BUTTON_NONE = -1 | 无效按键。 | 306| MOUSE_BUTTON_LEFT = 0 | 鼠标左键。 | 307| MOUSE_BUTTON_MIDDLE = 1 | 鼠标中间键。 | 308| MOUSE_BUTTON_RIGHT = 2 | 鼠标右键。 | 309| MOUSE_BUTTON_FORWARD = 3 | 鼠标前进键。 | 310| MOUSE_BUTTON_BACK = 4 | 鼠标返回键。 | 311 312### Input_TouchEventAction 313 314``` 315enum Input_TouchEventAction 316``` 317 318**描述** 319 320触屏动作的枚举值。 321 322**起始版本:** 12 323 324| 枚举项 | 描述 | 325| -- | -- | 326| TOUCH_ACTION_CANCEL = 0 | 触屏取消。 | 327| TOUCH_ACTION_DOWN = 1 | 触屏按下。 | 328| TOUCH_ACTION_MOVE = 2 | 触屏移动。 | 329| TOUCH_ACTION_UP = 3 | 触屏抬起。 | 330 331### Input_InjectionStatus 332 333``` 334enum Input_InjectionStatus 335``` 336 337**描述** 338 339注入权限状态枚举值。 340 341**起始版本:** 20 342 343| 枚举项 | 描述 | 344| -- | -- | 345| UNAUTHORIZED = 0 | 未授权。 | 346| AUTHORIZING = 1 | 授权中。 | 347| AUTHORIZED = 2 | 已授权。 | 348 349### InputEvent_SourceType 350 351``` 352enum InputEvent_SourceType 353``` 354 355**描述** 356 357输入事件源类型。 358 359**起始版本:** 12 360 361| 枚举项 | 描述 | 362| -- | -- | 363| SOURCE_TYPE_MOUSE = 1 | 表示输入源生成鼠标光标移动、按钮按下和释放以及滚轮滚动的事件。 | 364| SOURCE_TYPE_TOUCHSCREEN = 2 | 表示输入源产生触摸屏多点触屏事件。 | 365| SOURCE_TYPE_TOUCHPAD = 3 | 表示输入源产生触摸板多点触屏事件。 | 366 367### Input_KeyboardType 368 369``` 370enum Input_KeyboardType 371``` 372 373**描述** 374 375输入设备的键盘类型。 376 377**起始版本:** 13 378 379| 枚举项 | 描述 | 380| -- | -- | 381| KEYBOARD_TYPE_NONE = 0 | 表示无按键设备。 | 382| KEYBOARD_TYPE_UNKNOWN = 1 | 表示未知按键设备。 | 383| KEYBOARD_TYPE_ALPHABETIC = 2 | 表示全键盘设备。 | 384| KEYBOARD_TYPE_DIGITAL = 3 | 表示数字键盘设备。 | 385| KEYBOARD_TYPE_STYLUS = 4 | 表示手写笔设备。 | 386| KEYBOARD_TYPE_REMOTE_CONTROL = 5 | 表示遥控器设备。 | 387 388### Input_Result 389 390``` 391enum Input_Result 392``` 393 394**描述** 395 396错误码枚举值。 397 398**起始版本:** 12 399 400| 枚举项 | 描述 | 401| -- | -- | 402| INPUT_SUCCESS = 0 | 操作成功。 | 403| INPUT_PERMISSION_DENIED = 201 | 权限验证失败。 | 404| INPUT_NOT_SYSTEM_APPLICATION = 202 | 非系统应用。 | 405| INPUT_PARAMETER_ERROR = 401 | 参数检查失败。 | 406| INPUT_DEVICE_NOT_SUPPORTED = 801 | 表示功能不受支持。<br>**起始版本:** 14。| 407| INPUT_SERVICE_EXCEPTION = 3800001 | 服务异常。 | 408| INPUT_REPEAT_INTERCEPTOR = 4200001 | 应用创建拦截后,再次执行创建拦截的操作。 | 409| INPUT_OCCUPIED_BY_SYSTEM = 4200002 | 已经被系统应用占用。<br>**起始版本:** 14。 | 410| INPUT_OCCUPIED_BY_OTHER = 4200003 | 已经被其他应用占用。<br>**起始版本:** 14。 | 411| INPUT_KEYBOARD_DEVICE_NOT_EXIST = 3900002 | 未连接键盘设备。<br>**起始版本:** 15。 | 412| INPUT_INJECTION_AUTHORIZING = 3900005 | 正在授权中。<br>**起始版本:** 20。 | 413| INPUT_INJECTION_OPERATION_FREQUENT = 3900006 | 重复请求。<br>**起始版本:** 20。 | 414| INPUT_INJECTION_AUTHORIZED = 3900007 | 当前应用已经授权。<br>**起始版本:** 20。 | 415| INPUT_INJECTION_AUTHORIZED_OTHERS = 3900008 | 其它应用已经授权。<br>**起始版本:** 20。 | 416| INPUT_APP_NOT_FOCUSED = 3900009 | 当前应用不是焦点应用。<br>**起始版本:** 20。 | 417| INPUT_DEVICE_NO_POINTER = 3900010 | 无鼠标类输入外设。<br>**起始版本:** 20。 | 418 419 420## 函数说明 421 422### Input_HotkeyCallback() 423 424``` 425typedef void (*Input_HotkeyCallback)(Input_Hotkey* hotkey) 426``` 427 428**描述** 429 430回调函数,用于回调快捷键事件。 431 432**起始版本:** 14 433 434### Input_KeyEventCallback() 435 436``` 437typedef void (*Input_KeyEventCallback)(const Input_KeyEvent* keyEvent) 438``` 439 440**描述** 441 442按键事件的回调函数,keyEvent的生命周期为回调函数内。 443 444**起始版本:** 12 445 446 447**参数:** 448 449| 参数项 | 描述 | 450| -- | -- | 451| const [Input_KeyEvent](capi-input-input-keyevent.md)* keyEvent | 按键事件对象,通过[OH_Input_CreateKeyEvent](#oh_input_createkeyevent)接口可以创建按键事件对象。<br>使用完需使用[OH_Input_DestroyKeyEvent](#oh_input_destroykeyevent)接口销毁按键事件对象。 | 452 453### Input_MouseEventCallback() 454 455``` 456typedef void (*Input_MouseEventCallback)(const Input_MouseEvent* mouseEvent) 457``` 458 459**描述** 460 461鼠标事件的回调函数,mouseEvent的生命周期为回调函数内。 462 463**起始版本:** 12 464 465 466**参数:** 467 468| 参数项 | 描述 | 469| -- | -- | 470| const [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 471 472### Input_TouchEventCallback() 473 474``` 475typedef void (*Input_TouchEventCallback)(const Input_TouchEvent* touchEvent) 476``` 477 478**描述** 479 480触屏事件的回调函数,touchEvent的生命周期为回调函数内。 481 482**起始版本:** 12 483 484 485**参数:** 486 487| 参数项 | 描述 | 488| -- | -- | 489| const [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 490 491### Input_AxisEventCallback() 492 493``` 494typedef void (*Input_AxisEventCallback)(const Input_AxisEvent* axisEvent) 495``` 496 497**描述** 498 499轴事件的回调函数,axisEvent的生命周期为回调函数内。 500 501**起始版本:** 12 502 503 504**参数:** 505 506| 参数项 | 描述 | 507| -- | -- | 508| const [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 509 510### Input_DeviceAddedCallback() 511 512``` 513typedef void (*Input_DeviceAddedCallback)(int32_t deviceId) 514``` 515 516**描述** 517 518回调函数,用于回调输入设备的热插事件。 519 520**起始版本:** 13 521 522 523**参数:** 524 525| 参数项 | 描述 | 526| -- | -- | 527| int32_t deviceId | 设备的ID。 | 528 529### Input_DeviceRemovedCallback() 530 531``` 532typedef void (*Input_DeviceRemovedCallback)(int32_t deviceId) 533``` 534 535**描述** 536 537回调函数,用于回调输入设备的热拔事件。 538 539**起始版本:** 13 540 541 542**参数:** 543 544| 参数项 | 描述 | 545| -- | -- | 546| int32_t deviceId | 设备的ID。 | 547 548### Input_InjectAuthorizeCallback() 549 550``` 551typedef void (*Input_InjectAuthorizeCallback)(Input_InjectionStatus authorizedStatus) 552``` 553 554**描述** 555 556回调函数,用于获取注入权限状态。 557 558**起始版本:** 20 559 560 561**参数:** 562 563| 参数项 | 描述 | 564| -- | -- | 565| [Input_InjectionStatus](capi-oh-input-manager-h.md#input_injectionstatus) authorizedStatus | 注入权限状态。 | 566 567### OH_Input_GetKeyState() 568 569``` 570Input_Result OH_Input_GetKeyState(struct Input_KeyState* keyState) 571``` 572 573**描述** 574 575查询按键状态的枚举对象。 576 577**系统能力:** SystemCapability.MultimodalInput.Input.Core 578 579**起始版本:** 12 580 581 582**参数:** 583 584| 参数项 | 描述 | 585| -- | -- | 586| struct [Input_KeyState](capi-input-input-keystate.md)* keyState | 按键状态的枚举对象,具体请参考[Input_KeyStateAction](#input_keystateaction)。 | 587 588**返回:** 589 590| 类型 | 说明 | 591| -- | -- | 592| [Input_Result](#input_result) | 如果操作成功,@return返回[INPUT_SUCCESS](#input_result); <br> 否则返回[Input_Result](#input_result)中定义的其他错误代码。 | 593 594### OH_Input_CreateKeyState() 595 596``` 597struct Input_KeyState* OH_Input_CreateKeyState() 598``` 599 600**描述** 601 602创建按键状态的枚举对象。 603 604**系统能力:** SystemCapability.MultimodalInput.Input.Core 605 606**起始版本:** 12 607 608**返回:** 609 610| 类型 | 说明 | 611| -- | -- | 612| struct | 如果操作成功,@return返回一个[Input_KeyState](capi-input-input-keystate.md)指针对象;否则返回空指针。 | 613 614### OH_Input_DestroyKeyState() 615 616``` 617void OH_Input_DestroyKeyState(struct Input_KeyState** keyState) 618``` 619 620**描述** 621 622销毁按键状态的枚举对象。 623 624**系统能力:** SystemCapability.MultimodalInput.Input.Core 625 626**起始版本:** 12 627 628 629**参数:** 630 631| 参数项 | 描述 | 632| -- | -- | 633| struct [Input_KeyState](capi-input-input-keystate.md)** keyState | 按键状态的枚举对象,具体请参考[Input_KeyStateAction](#input_keystateaction)。 | 634 635### OH_Input_SetKeyCode() 636 637``` 638void OH_Input_SetKeyCode(struct Input_KeyState* keyState, int32_t keyCode) 639``` 640 641**描述** 642 643设置按键状态对象的键值。 644 645**系统能力:** SystemCapability.MultimodalInput.Input.Core 646 647**起始版本:** 12 648 649 650**参数:** 651 652| 参数项 | 描述 | 653| -- | -- | 654| struct [Input_KeyState](capi-input-input-keystate.md)* keyState | 按键状态的枚举对象,具体请参考[Input_KeyStateAction](#input_keystateaction)。 | 655| int32_t keyCode | 按键键值。 | 656 657### OH_Input_GetKeyCode() 658 659``` 660int32_t OH_Input_GetKeyCode(const struct Input_KeyState* keyState) 661``` 662 663**描述** 664 665获取按键状态对象的键值。 666 667**系统能力:** SystemCapability.MultimodalInput.Input.Core 668 669**起始版本:** 12 670 671 672**参数:** 673 674| 参数项 | 描述 | 675| -- | -- | 676| const struct [Input_KeyState](capi-input-input-keystate.md)* keyState | 按键状态的枚举对象,具体请参考[Input_KeyStateAction](capi-oh-input-manager-h.md#input_keystateaction)。 | 677 678**返回:** 679 680| 类型 | 说明 | 681| -- | -- | 682| int32_t | 返回按键状态对象的键值。 | 683 684### OH_Input_SetKeyPressed() 685 686``` 687void OH_Input_SetKeyPressed(struct Input_KeyState* keyState, int32_t keyAction) 688``` 689 690**描述** 691 692设置按键状态对象的按键是否按下。 693 694**系统能力:** SystemCapability.MultimodalInput.Input.Core 695 696**起始版本:** 12 697 698 699**参数:** 700 701| 参数项 | 描述 | 702| -- | -- | 703| struct [Input_KeyState](capi-input-input-keystate.md)* keyState | 按键状态的枚举对象,具体请参考[Input_KeyStateAction](#input_keystateaction)。 | 704| int32_t keyAction | 按键是否按下,具体请参考[Input_KeyEventAction](#input_keyeventaction)。 | 705 706### OH_Input_GetKeyPressed() 707 708``` 709int32_t OH_Input_GetKeyPressed(const struct Input_KeyState* keyState) 710``` 711 712**描述** 713 714获取按键状态对象的按键是否按下。 715 716**系统能力:** SystemCapability.MultimodalInput.Input.Core 717 718**起始版本:** 12 719 720 721**参数:** 722 723| 参数项 | 描述 | 724| -- | -- | 725| const struct [Input_KeyState](capi-input-input-keystate.md)* keyState | 按键状态的枚举对象,具体请参考[Input_KeyStateAction](capi-oh-input-manager-h.md#input_keystateaction)。 | 726 727**返回:** 728 729| 类型 | 说明 | 730| -- | -- | 731| int32_t | 返回按键状态对象的按键按下状态。 | 732 733### OH_Input_SetKeySwitch() 734 735``` 736void OH_Input_SetKeySwitch(struct Input_KeyState* keyState, int32_t keySwitch) 737``` 738 739**描述** 740 741设置按键状态对象的按键开关。 742 743**系统能力:** SystemCapability.MultimodalInput.Input.Core 744 745**起始版本:** 12 746 747 748**参数:** 749 750| 参数项 | 描述 | 751| -- | -- | 752| struct [Input_KeyState](capi-input-input-keystate.md)* keyState | 按键状态的枚举对象,具体请参考[Input_KeyStateAction](#input_keystateaction)。 | 753| int32_t keySwitch | 按键开关。 | 754 755### OH_Input_GetKeySwitch() 756 757``` 758int32_t OH_Input_GetKeySwitch(const struct Input_KeyState* keyState) 759``` 760 761**描述** 762 763获取按键状态对象的按键开关。 764 765**系统能力:** SystemCapability.MultimodalInput.Input.Core 766 767**起始版本:** 12 768 769 770**参数:** 771 772| 参数项 | 描述 | 773| -- | -- | 774| const struct [Input_KeyState](capi-input-input-keystate.md)* keyState | 按键状态的枚举对象,具体请参考[Input_KeyStateAction](capi-oh-input-manager-h.md#input_keystateaction)。 | 775 776**返回:** 777 778| 类型 | 说明 | 779| -- | -- | 780| int32_t | 返回按键状态对象的按键开关。 | 781 782### OH_Input_InjectKeyEvent() 783 784``` 785int32_t OH_Input_InjectKeyEvent(const struct Input_KeyEvent* keyEvent) 786``` 787 788**描述** 789 790注入按键事件。 791 792如果当前处于用户未授权状态,调用该接口注入事件不生效。 793 794从API version 20开始,建议先使用[OH_Input_RequestInjection](#oh_input_requestinjection)请求授权。然后通过[OH_Input_QueryAuthorizedStatus](#oh_input_queryauthorizedstatus)查询授权状态,当授权状态为[AUTHORIZED](capi-oh-input-manager-h.md#input_injectionstatus)时,再使用该接口。 795 796**系统能力:** SystemCapability.MultimodalInput.Input.Core 797 798**起始版本:** 12 799 800 801**参数:** 802 803| 参数项 | 描述 | 804| -- | -- | 805| const struct [Input_KeyEvent](capi-input-input-keyevent.md)* keyEvent | 按键事件对象,通过[OH_Input_CreateKeyEvent](#oh_input_createkeyevent)接口可以创建按键事件对象。<br>使用完需使用[OH_Input_DestroyKeyEvent](#oh_input_destroykeyevent)接口销毁按键事件对象。 | 806 807**返回:** 808 809| 类型 | 说明 | 810| -- | -- | 811| int32_t | OH_Input_InjectKeyEvent 函数错误码。<br> 若注入成功,返回[INPUT_SUCCESS](capi-oh-input-manager-h.md#input_result);<br> 若缺少权限,返回[INPUT_PERMISSION_DENIED](capi-oh-input-manager-h.md#input_result);<br> 若参数错误,返回[INPUT_PARAMETER_ERROR](capi-oh-input-manager-h.md#input_result)。 | 812 813### OH_Input_CreateKeyEvent() 814 815``` 816struct Input_KeyEvent* OH_Input_CreateKeyEvent() 817``` 818 819**描述** 820 821创建按键事件对象。 822 823**系统能力:** SystemCapability.MultimodalInput.Input.Core 824 825**起始版本:** 12 826 827**返回:** 828 829| 类型 | 说明 | 830| -- | -- | 831| struct | 如果操作成功返回一个[Input_KeyEvent](capi-input-input-keyevent.md)指针对象,否则返回空指针。 | 832 833### OH_Input_DestroyKeyEvent() 834 835``` 836void OH_Input_DestroyKeyEvent(struct Input_KeyEvent** keyEvent) 837``` 838 839**描述** 840 841销毁按键事件对象。 842 843**系统能力:** SystemCapability.MultimodalInput.Input.Core 844 845**起始版本:** 12 846 847 848**参数:** 849 850| 参数项 | 描述 | 851| -- | -- | 852| struct [Input_KeyEvent](capi-input-input-keyevent.md)** keyEvent | 按键事件对象。 | 853 854### OH_Input_SetKeyEventAction() 855 856``` 857void OH_Input_SetKeyEventAction(struct Input_KeyEvent* keyEvent, int32_t action) 858``` 859 860**描述** 861 862设置按键事件类型。 863 864**系统能力:** SystemCapability.MultimodalInput.Input.Core 865 866**起始版本:** 12 867 868 869**参数:** 870 871| 参数项 | 描述 | 872| -- | -- | 873| struct [Input_KeyEvent](capi-input-input-keyevent.md)* keyEvent | 按键事件对象,通过[OH_Input_CreateKeyEvent](#oh_input_createkeyevent)接口可以创建按键事件对象。<br>使用完需使用[OH_Input_DestroyKeyEvent](#oh_input_destroykeyevent)接口销毁按键事件对象。 | 874| int32_t action | 按键事件类型。相关取值可参考[Input_KeyEventAction](#input_keyeventaction)。 | 875 876### OH_Input_GetKeyEventAction() 877 878``` 879int32_t OH_Input_GetKeyEventAction(const struct Input_KeyEvent* keyEvent) 880``` 881 882**描述** 883 884获取按键事件类型。 885 886**系统能力:** SystemCapability.MultimodalInput.Input.Core 887 888**起始版本:** 12 889 890 891**参数:** 892 893| 参数项 | 描述 | 894| -- | -- | 895| const struct [Input_KeyEvent](capi-input-input-keyevent.md)* keyEvent | 按键事件对象,通过[OH_Input_CreateKeyEvent](#oh_input_createkeyevent)接口可以创建按键事件对象。<br>使用完需使用[OH_Input_DestroyKeyEvent](#oh_input_destroykeyevent)接口销毁按键事件对象。 | 896 897**返回:** 898 899| 类型 | 说明 | 900| -- | -- | 901| int32_t | 返回按键事件类型。相关取值可参考[Input_KeyEventAction](#input_keyeventaction)。 | 902 903### OH_Input_SetKeyEventKeyCode() 904 905``` 906void OH_Input_SetKeyEventKeyCode(struct Input_KeyEvent* keyEvent, int32_t keyCode) 907``` 908 909**描述** 910 911设置按键事件的键值。 912 913**系统能力:** SystemCapability.MultimodalInput.Input.Core 914 915**起始版本:** 12 916 917 918**参数:** 919 920| 参数项 | 描述 | 921| -- | -- | 922| struct [Input_KeyEvent](capi-input-input-keyevent.md)* keyEvent | 按键事件对象,通过[OH_Input_CreateKeyEvent](#oh_input_createkeyevent)接口可以创建按键事件对象。<br>使用完需使用[OH_Input_DestroyKeyEvent](#oh_input_destroykeyevent)接口销毁按键事件对象。 | 923| int32_t keyCode | 按键的键值。 | 924 925### OH_Input_GetKeyEventKeyCode() 926 927``` 928int32_t OH_Input_GetKeyEventKeyCode(const struct Input_KeyEvent* keyEvent) 929``` 930 931**描述** 932 933获取按键事件的键值。 934 935**系统能力:** SystemCapability.MultimodalInput.Input.Core 936 937**起始版本:** 12 938 939 940**参数:** 941 942| 参数项 | 描述 | 943| -- | -- | 944| const struct [Input_KeyEvent](capi-input-input-keyevent.md)* keyEvent | 按键事件对象,通过[OH_Input_CreateKeyEvent](#oh_input_createkeyevent)接口可以创建按键事件对象。<br>使用完需使用[OH_Input_DestroyKeyEvent](#oh_input_destroykeyevent)接口销毁按键事件对象。 | 945 946**返回:** 947 948| 类型 | 说明 | 949| -- | -- | 950| int32_t | Key code. | 951 952### OH_Input_SetKeyEventActionTime() 953 954``` 955void OH_Input_SetKeyEventActionTime(struct Input_KeyEvent* keyEvent, int64_t actionTime) 956``` 957 958**描述** 959 960设置按键事件发生的时间。 961 962**系统能力:** SystemCapability.MultimodalInput.Input.Core 963 964**起始版本:** 12 965 966 967**参数:** 968 969| 参数项 | 描述 | 970| -- | -- | 971| struct [Input_KeyEvent](capi-input-input-keyevent.md)* keyEvent | 按键事件对象,通过[OH_Input_CreateKeyEvent](#oh_input_createkeyevent)接口可以创建按键事件对象。<br>使用完需使用[OH_Input_DestroyKeyEvent](#oh_input_destroykeyevent)接口销毁按键事件对象。 | 972| int64_t actionTime | 按键事件发生的时间,表示从1970.1.1 00:00:00 GMT逝去的微秒数。 | 973 974### OH_Input_GetKeyEventActionTime() 975 976``` 977int64_t OH_Input_GetKeyEventActionTime(const struct Input_KeyEvent* keyEvent) 978``` 979 980**描述** 981 982获取按键事件发生的时间。 983 984**系统能力:** SystemCapability.MultimodalInput.Input.Core 985 986**起始版本:** 12 987 988 989**参数:** 990 991| 参数项 | 描述 | 992| -- | -- | 993| const struct [Input_KeyEvent](capi-input-input-keyevent.md)* keyEvent | 按键事件对象,通过[OH_Input_CreateKeyEvent](#oh_input_createkeyevent)接口可以创建按键事件对象。<br>使用完需使用[OH_Input_DestroyKeyEvent](#oh_input_destroykeyevent)接口销毁按键事件对象。 | 994 995**返回:** 996 997| 类型 | 说明 | 998| -- | -- | 999| int64_t | 返回按键事件发生的时间。 | 1000 1001### OH_Input_SetKeyEventWindowId() 1002 1003``` 1004void OH_Input_SetKeyEventWindowId(struct Input_KeyEvent* keyEvent, int32_t windowId) 1005``` 1006 1007**描述** 1008 1009设置按键事件的窗口Id。 1010 1011**系统能力:** SystemCapability.MultimodalInput.Input.Core 1012 1013**起始版本:** 15 1014 1015 1016**参数:** 1017 1018| 参数项 | 描述 | 1019| -- | -- | 1020| struct [Input_KeyEvent](capi-input-input-keyevent.md)* keyEvent | 按键事件对象,通过[OH_Input_CreateKeyEvent](#oh_input_createkeyevent)接口可以创建按键事件对象。<br>使用完需使用[OH_Input_DestroyKeyEvent](#oh_input_destroykeyevent)接口销毁按键事件对象。 | 1021| int32_t windowId | 按键事件对应的窗口Id。 | 1022 1023### OH_Input_GetKeyEventWindowId() 1024 1025``` 1026int32_t OH_Input_GetKeyEventWindowId(const struct Input_KeyEvent* keyEvent) 1027``` 1028 1029**描述** 1030 1031获取按键事件的窗口Id。 1032 1033**系统能力:** SystemCapability.MultimodalInput.Input.Core 1034 1035**起始版本:** 15 1036 1037 1038**参数:** 1039 1040| 参数项 | 描述 | 1041| -- | -- | 1042| const struct [Input_KeyEvent](capi-input-input-keyevent.md)* keyEvent | 按键事件对象,通过[OH_Input_CreateKeyEvent](#oh_input_createkeyevent)接口可以创建按键事件对象。<br>使用完需使用[OH_Input_DestroyKeyEvent](#oh_input_destroykeyevent)接口销毁按键事件对象。 | 1043 1044**返回:** 1045 1046| 类型 | 说明 | 1047| -- | -- | 1048| int32_t | 按键事件的窗口Id。 | 1049 1050### OH_Input_GetKeyEventDisplayId() 1051 1052``` 1053int32_t OH_Input_GetKeyEventDisplayId(const struct Input_KeyEvent* keyEvent) 1054``` 1055 1056**描述** 1057 1058获取按键事件的屏幕Id。 1059 1060**系统能力:** SystemCapability.MultimodalInput.Input.Core 1061 1062**起始版本:** 15 1063 1064 1065**参数:** 1066 1067| 参数项 | 描述 | 1068| -- | -- | 1069| const struct [Input_KeyEvent](capi-input-input-keyevent.md)* keyEvent | 按键事件对象,通过[OH_Input_CreateKeyEvent](#oh_input_createkeyevent)接口可以创建按键事件对象。<br>使用完需使用[OH_Input_DestroyKeyEvent](#oh_input_destroykeyevent)接口销毁按键事件对象。 | 1070 1071**返回:** 1072 1073| 类型 | 说明 | 1074| -- | -- | 1075| int32_t | 按键事件的屏幕Id。 | 1076 1077### OH_Input_SetKeyEventDisplayId() 1078 1079``` 1080void OH_Input_SetKeyEventDisplayId(struct Input_KeyEvent* keyEvent, int32_t displayId) 1081``` 1082 1083**描述** 1084 1085设置按键事件的屏幕Id。 1086 1087**系统能力:** SystemCapability.MultimodalInput.Input.Core 1088 1089**起始版本:** 15 1090 1091 1092**参数:** 1093 1094| 参数项 | 描述 | 1095| -- | -- | 1096| struct [Input_KeyEvent](capi-input-input-keyevent.md)* keyEvent | 按键事件对象,通过[OH_Input_CreateKeyEvent](#oh_input_createkeyevent)接口可以创建按键事件对象。<br>使用完需使用[OH_Input_DestroyKeyEvent](#oh_input_destroykeyevent)接口销毁按键事件对象。 | 1097| int32_t displayId | 按键事件对应的屏幕Id。 | 1098 1099### OH_Input_CreateMouseEvent() 1100 1101``` 1102struct Input_MouseEvent* OH_Input_CreateMouseEvent() 1103``` 1104 1105**描述** 1106 1107创建鼠标事件对象。 1108 1109**系统能力:** SystemCapability.MultimodalInput.Input.Core 1110 1111**起始版本:** 12 1112 1113**返回:** 1114 1115| 类型 | 说明 | 1116| -- | -- | 1117| struct | 如果操作成功返回一个[Input_MouseEvent](capi-input-input-mouseevent.md)指针对象,否则返回空指针。 | 1118 1119### OH_Input_DestroyMouseEvent() 1120 1121``` 1122void OH_Input_DestroyMouseEvent(struct Input_MouseEvent** mouseEvent) 1123``` 1124 1125**描述** 1126 1127销毁鼠标事件对象。 1128 1129**系统能力:** SystemCapability.MultimodalInput.Input.Core 1130 1131**起始版本:** 12 1132 1133 1134**参数:** 1135 1136| 参数项 | 描述 | 1137| -- | -- | 1138| struct [Input_MouseEvent](capi-input-input-mouseevent.md)** mouseEvent | 鼠标事件对象。 | 1139 1140### OH_Input_SetMouseEventAction() 1141 1142``` 1143void OH_Input_SetMouseEventAction(struct Input_MouseEvent* mouseEvent, int32_t action) 1144``` 1145 1146**描述** 1147 1148设置鼠标事件的动作。 1149 1150**系统能力:** SystemCapability.MultimodalInput.Input.Core 1151 1152**起始版本:** 12 1153 1154 1155**参数:** 1156 1157| 参数项 | 描述 | 1158| -- | -- | 1159| struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1160| int32_t action | 鼠标的动作。相关取值可参考[Input_MouseEventAction](#input_mouseeventaction)。 | 1161 1162### OH_Input_GetMouseEventAction() 1163 1164``` 1165int32_t OH_Input_GetMouseEventAction(const struct Input_MouseEvent* mouseEvent) 1166``` 1167 1168**描述** 1169 1170获取鼠标事件的动作。 1171 1172**系统能力:** SystemCapability.MultimodalInput.Input.Core 1173 1174**起始版本:** 12 1175 1176 1177**参数:** 1178 1179| 参数项 | 描述 | 1180| -- | -- | 1181| const struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1182 1183**返回:** 1184 1185| 类型 | 说明 | 1186| -- | -- | 1187| int32_t | 鼠标的动作。 | 1188 1189### OH_Input_SetMouseEventDisplayX() 1190 1191``` 1192void OH_Input_SetMouseEventDisplayX(struct Input_MouseEvent* mouseEvent, int32_t displayX) 1193``` 1194 1195**描述** 1196 1197设置鼠标事件以指定屏幕左上角为原点的相对坐标系的X坐标。 1198 1199**系统能力:** SystemCapability.MultimodalInput.Input.Core 1200 1201**起始版本:** 12 1202 1203 1204**参数:** 1205 1206| 参数项 | 描述 | 1207| -- | -- | 1208| struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1209| int32_t displayX | 鼠标事件以指定屏幕左上角为原点的相对坐标系的X坐标。 | 1210 1211### OH_Input_GetMouseEventDisplayX() 1212 1213``` 1214int32_t OH_Input_GetMouseEventDisplayX(const struct Input_MouseEvent* mouseEvent) 1215``` 1216 1217**描述** 1218 1219获取鼠标事件以指定屏幕左上角为原点的相对坐标系的X坐标。 1220 1221**系统能力:** SystemCapability.MultimodalInput.Input.Core 1222 1223**起始版本:** 12 1224 1225 1226**参数:** 1227 1228| 参数项 | 描述 | 1229| -- | -- | 1230| const struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1231 1232**返回:** 1233 1234| 类型 | 说明 | 1235| -- | -- | 1236| int32_t | 鼠标事件以指定屏幕左上角为原点的相对坐标系的X坐标。 | 1237 1238### OH_Input_SetMouseEventDisplayY() 1239 1240``` 1241void OH_Input_SetMouseEventDisplayY(struct Input_MouseEvent* mouseEvent, int32_t displayY) 1242``` 1243 1244**描述** 1245 1246设置鼠标事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 1247 1248**系统能力:** SystemCapability.MultimodalInput.Input.Core 1249 1250**起始版本:** 12 1251 1252 1253**参数:** 1254 1255| 参数项 | 描述 | 1256| -- | -- | 1257| struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1258| int32_t displayY | 鼠标事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 | 1259 1260### OH_Input_GetMouseEventDisplayY() 1261 1262``` 1263int32_t OH_Input_GetMouseEventDisplayY(const struct Input_MouseEvent* mouseEvent) 1264``` 1265 1266**描述** 1267 1268获取鼠标事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 1269 1270**系统能力:** SystemCapability.MultimodalInput.Input.Core 1271 1272**起始版本:** 12 1273 1274 1275**参数:** 1276 1277| 参数项 | 描述 | 1278| -- | -- | 1279| const struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1280 1281**返回:** 1282 1283| 类型 | 说明 | 1284| -- | -- | 1285| int32_t | 鼠标事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 | 1286 1287### OH_Input_SetMouseEventButton() 1288 1289``` 1290void OH_Input_SetMouseEventButton(struct Input_MouseEvent* mouseEvent, int32_t button) 1291``` 1292 1293**描述** 1294 1295设置鼠标事件的按键。 1296 1297**系统能力:** SystemCapability.MultimodalInput.Input.Core 1298 1299**起始版本:** 12 1300 1301 1302**参数:** 1303 1304| 参数项 | 描述 | 1305| -- | -- | 1306| struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1307| int32_t button | 鼠标按键。相关取值可参考[Input_MouseEventButton](#input_mouseeventbutton)。 | 1308 1309### OH_Input_GetMouseEventButton() 1310 1311``` 1312int32_t OH_Input_GetMouseEventButton(const struct Input_MouseEvent* mouseEvent) 1313``` 1314 1315**描述** 1316 1317获取鼠标事件的按键。 1318 1319**系统能力:** SystemCapability.MultimodalInput.Input.Core 1320 1321**起始版本:** 12 1322 1323 1324**参数:** 1325 1326| 参数项 | 描述 | 1327| -- | -- | 1328| const struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1329 1330**返回:** 1331 1332| 类型 | 说明 | 1333| -- | -- | 1334| int32_t | 鼠标按键。相关取值可参考[Input_MouseEventButton](#input_mouseeventbutton)。 | 1335 1336### OH_Input_SetMouseEventAxisType() 1337 1338``` 1339void OH_Input_SetMouseEventAxisType(struct Input_MouseEvent* mouseEvent, int32_t axisType) 1340``` 1341 1342**描述** 1343 1344设置鼠标轴事件的类型。 1345 1346**系统能力:** SystemCapability.MultimodalInput.Input.Core 1347 1348**起始版本:** 12 1349 1350 1351**参数:** 1352 1353| 参数项 | 描述 | 1354| -- | -- | 1355| struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1356| int32_t axisType | 轴类型,比如垂直轴、水平轴。相关取值可参考[InputEvent_MouseAxis](#inputevent_mouseaxis)。 | 1357 1358### OH_Input_GetMouseEventAxisType() 1359 1360``` 1361int32_t OH_Input_GetMouseEventAxisType(const struct Input_MouseEvent* mouseEvent) 1362``` 1363 1364**描述** 1365 1366获取鼠标轴事件的类型。 1367 1368**系统能力:** SystemCapability.MultimodalInput.Input.Core 1369 1370**起始版本:** 12 1371 1372 1373**参数:** 1374 1375| 参数项 | 描述 | 1376| -- | -- | 1377| const struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1378 1379**返回:** 1380 1381| 类型 | 说明 | 1382| -- | -- | 1383| int32_t | 轴类型。相关取值可参考[InputEvent_MouseAxis](#inputevent_mouseaxis)。 | 1384 1385### OH_Input_SetMouseEventAxisValue() 1386 1387``` 1388void OH_Input_SetMouseEventAxisValue(struct Input_MouseEvent* mouseEvent, float axisValue) 1389``` 1390 1391**描述** 1392 1393设置鼠标轴事件的值。 1394 1395**系统能力:** SystemCapability.MultimodalInput.Input.Core 1396 1397**起始版本:** 12 1398 1399 1400**参数:** 1401 1402| 参数项 | 描述 | 1403| -- | -- | 1404| struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1405| float axisValue | 轴事件的值,正数向前滚动(例如,1.0表示向前滚动一个单位),负数向后滚动(例如,-1.0表示向后滚动一个单位),零表示没有滚动。 | 1406 1407### OH_Input_GetMouseEventAxisValue() 1408 1409``` 1410float OH_Input_GetMouseEventAxisValue(const struct Input_MouseEvent* mouseEvent) 1411``` 1412 1413**描述** 1414 1415获取鼠标轴事件的值。 1416 1417**系统能力:** SystemCapability.MultimodalInput.Input.Core 1418 1419**起始版本:** 12 1420 1421 1422**参数:** 1423 1424| 参数项 | 描述 | 1425| -- | -- | 1426| const struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1427 1428**返回:** 1429 1430| 类型 | 说明 | 1431| -- | -- | 1432| float | 轴事件的值。 | 1433 1434### OH_Input_SetMouseEventActionTime() 1435 1436``` 1437void OH_Input_SetMouseEventActionTime(struct Input_MouseEvent* mouseEvent, int64_t actionTime) 1438``` 1439 1440**描述** 1441 1442设置鼠标事件发生的时间。 1443 1444**系统能力:** SystemCapability.MultimodalInput.Input.Core 1445 1446**起始版本:** 12 1447 1448 1449**参数:** 1450 1451| 参数项 | 描述 | 1452| -- | -- | 1453| struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1454| int64_t actionTime | 鼠标事件发生的时间,表示从1970.1.1 00:00:00 GMT逝去的微秒数。 | 1455 1456### OH_Input_GetMouseEventActionTime() 1457 1458``` 1459int64_t OH_Input_GetMouseEventActionTime(const struct Input_MouseEvent* mouseEvent) 1460``` 1461 1462**描述** 1463 1464获取鼠标事件发生的时间。 1465 1466**系统能力:** SystemCapability.MultimodalInput.Input.Core 1467 1468**起始版本:** 12 1469 1470 1471**参数:** 1472 1473| 参数项 | 描述 | 1474| -- | -- | 1475| mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1476 1477**返回:** 1478 1479| 类型 | 说明 | 1480| -- | -- | 1481| int64_t | 返回鼠标事件发生的时间。 | 1482 1483### OH_Input_SetMouseEventWindowId() 1484 1485``` 1486void OH_Input_SetMouseEventWindowId(struct Input_MouseEvent* mouseEvent, int32_t windowId) 1487``` 1488 1489**描述** 1490 1491设置鼠标事件的窗口Id。 1492 1493**系统能力:** SystemCapability.MultimodalInput.Input.Core 1494 1495**起始版本:** 15 1496 1497 1498**参数:** 1499 1500| 参数项 | 描述 | 1501| -- | -- | 1502| struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1503| int32_t windowId | 鼠标事件的窗口Id。 | 1504 1505### OH_Input_GetMouseEventWindowId() 1506 1507``` 1508int32_t OH_Input_GetMouseEventWindowId(const struct Input_MouseEvent* mouseEvent) 1509``` 1510 1511**描述** 1512 1513获取鼠标事件的窗口Id。 1514 1515**系统能力:** SystemCapability.MultimodalInput.Input.Core 1516 1517**起始版本:** 15 1518 1519 1520**参数:** 1521 1522| 参数项 | 描述 | 1523| -- | -- | 1524| const struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1525 1526**返回:** 1527 1528| 类型 | 说明 | 1529| -- | -- | 1530| int32_t | 鼠标事件的窗口Id。 | 1531 1532### OH_Input_SetMouseEventDisplayId() 1533 1534``` 1535void OH_Input_SetMouseEventDisplayId(struct Input_MouseEvent* mouseEvent, int32_t displayId) 1536``` 1537 1538**描述** 1539 1540设置鼠标事件的屏幕Id。 1541 1542**系统能力:** SystemCapability.MultimodalInput.Input.Core 1543 1544**起始版本:** 15 1545 1546 1547**参数:** 1548 1549| 参数项 | 描述 | 1550| -- | -- | 1551| struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 1552| int32_t displayId | 鼠标事件的屏幕Id。 | 1553 1554### OH_Input_CreateTouchEvent() 1555 1556``` 1557struct Input_TouchEvent* OH_Input_CreateTouchEvent() 1558``` 1559 1560**描述** 1561 1562创建触屏事件对象。 1563 1564**系统能力:** SystemCapability.MultimodalInput.Input.Core 1565 1566**起始版本:** 12 1567 1568**返回:** 1569 1570| 类型 | 说明 | 1571| -- | -- | 1572| struct | 如果操作成功返回一个[Input_TouchEvent](capi-input-input-touchevent.md)指针对象,否则返回空指针。 | 1573 1574### OH_Input_DestroyTouchEvent() 1575 1576``` 1577void OH_Input_DestroyTouchEvent(struct Input_TouchEvent** touchEvent) 1578``` 1579 1580**描述** 1581 1582销毁触屏事件对象。 1583 1584**系统能力:** SystemCapability.MultimodalInput.Input.Core 1585 1586**起始版本:** 12 1587 1588 1589**参数:** 1590 1591| 参数项 | 描述 | 1592| -- | -- | 1593| struct [Input_TouchEvent](capi-input-input-touchevent.md)** touchEvent | 触屏事件对象。 | 1594 1595### OH_Input_SetTouchEventAction() 1596 1597``` 1598void OH_Input_SetTouchEventAction(struct Input_TouchEvent* touchEvent, int32_t action) 1599``` 1600 1601**描述** 1602 1603设置触屏事件的动作。 1604 1605**系统能力:** SystemCapability.MultimodalInput.Input.Core 1606 1607**起始版本:** 12 1608 1609 1610**参数:** 1611 1612| 参数项 | 描述 | 1613| -- | -- | 1614| struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 1615| int32_t action | 触屏的动作。相关取值可参考[Input_TouchEventAction](#input_toucheventaction)。 | 1616 1617### OH_Input_GetTouchEventAction() 1618 1619``` 1620int32_t OH_Input_GetTouchEventAction(const struct Input_TouchEvent* touchEvent) 1621``` 1622 1623**描述** 1624 1625获取触屏事件的动作。 1626 1627**系统能力:** SystemCapability.MultimodalInput.Input.Core 1628 1629**起始版本:** 12 1630 1631 1632**参数:** 1633 1634| 参数项 | 描述 | 1635| -- | -- | 1636| const struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 1637 1638**返回:** 1639 1640| 类型 | 说明 | 1641| -- | -- | 1642| int32_t | 触屏的动作。相关取值可参考[Input_TouchEventAction](#input_toucheventaction)。 | 1643 1644### OH_Input_SetTouchEventFingerId() 1645 1646``` 1647void OH_Input_SetTouchEventFingerId(struct Input_TouchEvent* touchEvent, int32_t id) 1648``` 1649 1650**描述** 1651 1652设置触屏事件的手指ID。 1653 1654**系统能力:** SystemCapability.MultimodalInput.Input.Core 1655 1656**起始版本:** 12 1657 1658 1659**参数:** 1660 1661| 参数项 | 描述 | 1662| -- | -- | 1663| struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 1664| int32_t id | 触屏的手指ID。第一个手指碰到屏幕,id就是0,第二个手指碰到屏幕,id就是1,依次累加。 | 1665 1666### OH_Input_GetTouchEventFingerId() 1667 1668``` 1669int32_t OH_Input_GetTouchEventFingerId(const struct Input_TouchEvent* touchEvent) 1670``` 1671 1672**描述** 1673 1674获取触屏事件的手指ID。 1675 1676**系统能力:** SystemCapability.MultimodalInput.Input.Core 1677 1678**起始版本:** 12 1679 1680 1681**参数:** 1682 1683| 参数项 | 描述 | 1684| -- | -- | 1685| const struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 1686 1687**返回:** 1688 1689| 类型 | 说明 | 1690| -- | -- | 1691| int32_t | 触屏的手指ID。第一个手指碰到屏幕,id就是0,第二个手指碰到屏幕,id就是1,依次累加。 | 1692 1693### OH_Input_SetTouchEventDisplayX() 1694 1695``` 1696void OH_Input_SetTouchEventDisplayX(struct Input_TouchEvent* touchEvent, int32_t displayX) 1697``` 1698 1699**描述** 1700 1701设置触屏事件以指定屏幕左上角为原点的相对坐标系的X坐标。 1702 1703**系统能力:** SystemCapability.MultimodalInput.Input.Core 1704 1705**起始版本:** 12 1706 1707 1708**参数:** 1709 1710| 参数项 | 描述 | 1711| -- | -- | 1712| struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 1713| int32_t displayX | 触屏事件以指定屏幕左上角为原点的相对坐标系的X坐标。 | 1714 1715### OH_Input_GetTouchEventDisplayX() 1716 1717``` 1718int32_t OH_Input_GetTouchEventDisplayX(const struct Input_TouchEvent* touchEvent) 1719``` 1720 1721**描述** 1722 1723获取触屏事件以指定屏幕左上角为原点的相对坐标系的X坐标。 1724 1725**系统能力:** SystemCapability.MultimodalInput.Input.Core 1726 1727**起始版本:** 12 1728 1729 1730**参数:** 1731 1732| 参数项 | 描述 | 1733| -- | -- | 1734| const struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 1735 1736**返回:** 1737 1738| 类型 | 说明 | 1739| -- | -- | 1740| int32_t | 触屏事件以指定屏幕左上角为原点的相对坐标系的X坐标。 | 1741 1742### OH_Input_SetTouchEventDisplayY() 1743 1744``` 1745void OH_Input_SetTouchEventDisplayY(struct Input_TouchEvent* touchEvent, int32_t displayY) 1746``` 1747 1748**描述** 1749 1750设置触屏事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 1751 1752**系统能力:** SystemCapability.MultimodalInput.Input.Core 1753 1754**起始版本:** 12 1755 1756 1757**参数:** 1758 1759| 参数项 | 描述 | 1760| -- | -- | 1761| struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 1762| int32_t displayY | 触屏事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 | 1763 1764### OH_Input_GetTouchEventDisplayY() 1765 1766``` 1767int32_t OH_Input_GetTouchEventDisplayY(const struct Input_TouchEvent* touchEvent) 1768``` 1769 1770**描述** 1771 1772获取触屏事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 1773 1774**系统能力:** SystemCapability.MultimodalInput.Input.Core 1775 1776**起始版本:** 12 1777 1778 1779**参数:** 1780 1781| 参数项 | 描述 | 1782| -- | -- | 1783| const struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 1784 1785**返回:** 1786 1787| 类型 | 说明 | 1788| -- | -- | 1789| int32_t | 触屏事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 | 1790 1791### OH_Input_SetTouchEventActionTime() 1792 1793``` 1794void OH_Input_SetTouchEventActionTime(struct Input_TouchEvent* touchEvent, int64_t actionTime) 1795``` 1796 1797**描述** 1798 1799设置触屏事件发生的时间。 1800 1801**系统能力:** SystemCapability.MultimodalInput.Input.Core 1802 1803**起始版本:** 12 1804 1805 1806**参数:** 1807 1808| 参数项 | 描述 | 1809| -- | -- | 1810| touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 1811| int64_t actionTime | 触屏事件发生的时间,表示从1970.1.1 00:00:00 GMT逝去的微秒数。 | 1812 1813### OH_Input_GetTouchEventActionTime() 1814 1815``` 1816int64_t OH_Input_GetTouchEventActionTime(const struct Input_TouchEvent* touchEvent) 1817``` 1818 1819**描述** 1820 1821获取触屏事件发生的时间。 1822 1823**系统能力:** SystemCapability.MultimodalInput.Input.Core 1824 1825**起始版本:** 12 1826 1827 1828**参数:** 1829 1830| 参数项 | 描述 | 1831| -- | -- | 1832| touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 1833 1834**返回:** 1835 1836| 类型 | 说明 | 1837| -- | -- | 1838| int64_t | 返回触屏事件发生的时间。 | 1839 1840### OH_Input_SetTouchEventWindowId() 1841 1842``` 1843void OH_Input_SetTouchEventWindowId(struct Input_TouchEvent* touchEvent, int32_t windowId) 1844``` 1845 1846**描述** 1847 1848设置触屏事件的窗口Id。 1849 1850**系统能力:** SystemCapability.MultimodalInput.Input.Core 1851 1852**起始版本:** 15 1853 1854 1855**参数:** 1856 1857| 参数项 | 描述 | 1858| -- | -- | 1859| struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 1860| int32_t windowId | 触屏事件的窗口Id。 | 1861 1862### OH_Input_GetTouchEventWindowId() 1863 1864``` 1865int32_t OH_Input_GetTouchEventWindowId(const struct Input_TouchEvent* touchEvent) 1866``` 1867 1868**描述** 1869 1870获取触屏事件的窗口Id。 1871 1872**系统能力:** SystemCapability.MultimodalInput.Input.Core 1873 1874**起始版本:** 15 1875 1876 1877**参数:** 1878 1879| 参数项 | 描述 | 1880| -- | -- | 1881| const struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 1882 1883**返回:** 1884 1885| 类型 | 说明 | 1886| -- | -- | 1887| int32_t | 触屏事件的窗口Id。 | 1888 1889### OH_Input_SetTouchEventDisplayId() 1890 1891``` 1892void OH_Input_SetTouchEventDisplayId(struct Input_TouchEvent* touchEvent, int32_t displayId) 1893``` 1894 1895**描述** 1896 1897设置触屏事件的屏幕Id。 1898 1899**系统能力:** SystemCapability.MultimodalInput.Input.Core 1900 1901**起始版本:** 15 1902 1903 1904**参数:** 1905 1906| 参数项 | 描述 | 1907| -- | -- | 1908| struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 1909| int32_t displayId | 触屏事件的屏幕Id。 | 1910 1911### OH_Input_GetTouchEventDisplayId() 1912 1913``` 1914int32_t OH_Input_GetTouchEventDisplayId(const struct Input_TouchEvent* touchEvent) 1915``` 1916 1917**描述** 1918 1919获取触屏事件的屏幕Id。 1920 1921**系统能力:** SystemCapability.MultimodalInput.Input.Core 1922 1923**起始版本:** 15 1924 1925 1926**参数:** 1927 1928| 参数项 | 描述 | 1929| -- | -- | 1930| const struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 1931 1932**返回:** 1933 1934| 类型 | 说明 | 1935| -- | -- | 1936| int32_t | 触屏事件的屏幕Id。 | 1937 1938### OH_Input_CancelInjection() 1939 1940``` 1941void OH_Input_CancelInjection() 1942``` 1943 1944**描述** 1945 1946取消事件注入并撤销授权。 1947 1948**系统能力:** SystemCapability.MultimodalInput.Input.Core 1949 1950**起始版本:** 12 1951 1952### OH_Input_RequestInjection() 1953 1954``` 1955Input_Result OH_Input_RequestInjection(Input_InjectAuthorizeCallback callback) 1956``` 1957 1958**描述** 1959 1960当前应用申请注入权限,包括申请注入按键事件[OH_Input_InjectKeyEvent](capi-oh-input-manager-h.md#oh_input_injectkeyevent)、注入触屏事件[OH_Input_InjectTouchEvent](capi-oh-input-manager-h.md#oh_input_injecttouchevent)、注入鼠标事件[OH_Input_InjectMouseEvent](capi-oh-input-manager-h.md#oh_input_injectmouseevent)等注入操作的权限。 1961 1962**系统能力:** SystemCapability.MultimodalInput.Input.Core 1963 1964**设备行为差异**:该接口仅在PC/2in1设备上生效,在其他设备上返回801错误码。 1965 1966**起始版本:** 20 1967 1968 1969**参数:** 1970 1971| 参数项 | 描述 | 1972| -- | -- | 1973| [Input_InjectAuthorizeCallback](capi-oh-input-manager-h.md#input_injectauthorizecallback) callback | 授权状态回调,具体请参考[Input_InjectAuthorizeCallback](capi-oh-input-manager-h.md#input_injectauthorizecallback)。 | 1974 1975**返回:** 1976 1977| 类型 | 说明 | 1978| -- | -- | 1979| [Input_Result](capi-oh-input-manager-h.md#input_result) | 返回结果码,参见[Input_Result](capi-oh-input-manager-h.md#input_result)。<br> INPUT_SUCCESS = 0 申请授权成功,等待用户授权结果并回调授权状态。<br> INPUT_PARAMETER_ERROR = 401 参数错误,参数callback为空。<br> INPUT_DEVICE_NOT_SUPPORTED = 801 设备不支持。<br> INPUT_SERVICE_EXCEPTION = 3800001 服务器错误。<br> INPUT_INJECTION_AUTHORIZING = 3900005 正在授权中。<br> INPUT_INJECTION_OPERATION_FREQUENT = 3900006 重复请求(当前应用连续申请授权弹窗成功,间隔时间不超过3秒)。<br> INPUT_INJECTION_AUTHORIZED = 3900007 当前应用已经授权。<br> INPUT_INJECTION_AUTHORIZED_OTHERS = 3900008 其它应用已经授权。 | 1980 1981### OH_Input_QueryAuthorizedStatus() 1982 1983``` 1984Input_Result OH_Input_QueryAuthorizedStatus(Input_InjectionStatus* status) 1985``` 1986 1987**描述** 1988 1989查询当前应用注入的权限状态。 1990 1991**起始版本:** 20 1992 1993 1994**参数:** 1995 1996| 参数项 | 描述 | 1997| -- | -- | 1998| [Input_InjectionStatus](capi-oh-input-manager-h.md#input_injectionstatus)* status | 当前应用注入权限状态。参见[Input_InjectionStatus](capi-oh-input-manager-h.md#input_injectionstatus)。 | 1999 2000**返回:** 2001 2002| 类型 | 说明 | 2003| -- | -- | 2004| [Input_Result](capi-oh-input-manager-h.md#input_result) | 返回结果码,参见[Input_Result](capi-oh-input-manager-h.md#input_result)。<br> INPUT_SUCCESS = 0 查询成功。<br> INPUT_PARAMETER_ERROR = 401 参数错误,参数status为空。<br> INPUT_SERVICE_EXCEPTION = 3800001 服务器错误。 | 2005 2006### OH_Input_CreateAxisEvent() 2007 2008``` 2009Input_AxisEvent* OH_Input_CreateAxisEvent(void) 2010``` 2011 2012**描述** 2013 2014创建轴事件对象实例。 2015 2016**系统能力:** SystemCapability.MultimodalInput.Input.Core 2017 2018**起始版本:** 12 2019 2020**返回:** 2021 2022| 类型 | 说明 | 2023| -- | -- | 2024| Input_AxisEvent* | 成功返回[Input_AxisEvent](capi-input-input-axisevent.md)对象实例,失败则返回null。 | 2025 2026### OH_Input_DestroyAxisEvent() 2027 2028``` 2029Input_Result OH_Input_DestroyAxisEvent(Input_AxisEvent** axisEvent) 2030``` 2031 2032**描述** 2033 2034销毁轴事件对象实例。 2035 2036**系统能力:** SystemCapability.MultimodalInput.Input.Core 2037 2038**起始版本:** 12 2039 2040 2041**参数:** 2042 2043| 参数项 | 描述 | 2044| -- | -- | 2045| [Input_AxisEvent](capi-input-input-axisevent.md)** axisEvent | 轴事件对象实例的指针。 | 2046 2047**返回:** 2048 2049| 类型 | 说明 | 2050| -- | -- | 2051| [Input_Result](#input_result) | 若销毁成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent为NULL或者axisEvent为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2052 2053### OH_Input_SetAxisEventAction() 2054 2055``` 2056Input_Result OH_Input_SetAxisEventAction(Input_AxisEvent* axisEvent, InputEvent_AxisAction action) 2057``` 2058 2059**描述** 2060 2061设置轴事件的动作。 2062 2063**系统能力:** SystemCapability.MultimodalInput.Input.Core 2064 2065**起始版本:** 12 2066 2067 2068**参数:** 2069 2070| 参数项 | 描述 | 2071| -- | -- | 2072| [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2073| [InputEvent_AxisAction](capi-oh-axis-type-h.md#inputevent_axisaction) action | 轴事件动作,具体请参考[InputEvent_AxisAction](capi-oh-axis-type-h.md#inputevent_axisaction)。 | 2074 2075**返回:** 2076 2077| 类型 | 说明 | 2078| -- | -- | 2079| [Input_Result](#input_result) | 若设置轴事件的动作成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2080 2081### OH_Input_GetAxisEventAction() 2082 2083``` 2084Input_Result OH_Input_GetAxisEventAction(const Input_AxisEvent* axisEvent, InputEvent_AxisAction *action) 2085``` 2086 2087**描述** 2088 2089获取轴事件的动作。 2090 2091**系统能力:** SystemCapability.MultimodalInput.Input.Core 2092 2093**起始版本:** 12 2094 2095 2096**参数:** 2097 2098| 参数项 | 描述 | 2099| -- | -- | 2100| const [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2101| [InputEvent_AxisAction](capi-oh-axis-type-h.md#inputevent_axisaction) *action | action 出参,返回轴事件动作,具体请参考在[InputEvent_AxisAction](capi-oh-axis-type-h.md#inputevent_axisaction)。 | 2102 2103**返回:** 2104 2105| 类型 | 说明 | 2106| -- | -- | 2107| [Input_Result](#input_result) | 若获取轴事件的动作成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent或者action为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2108 2109### OH_Input_SetAxisEventDisplayX() 2110 2111``` 2112Input_Result OH_Input_SetAxisEventDisplayX(Input_AxisEvent* axisEvent, float displayX) 2113``` 2114 2115**描述** 2116 2117设置轴事件以指定屏幕左上角为原点的相对坐标系的X坐标。 2118 2119**系统能力:** SystemCapability.MultimodalInput.Input.Core 2120 2121**起始版本:** 12 2122 2123 2124**参数:** 2125 2126| 参数项 | 描述 | 2127| -- | -- | 2128| [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2129| float displayX | 轴事件以指定屏幕左上角为原点的相对坐标系的X坐标。 | 2130 2131**返回:** 2132 2133| 类型 | 说明 | 2134| -- | -- | 2135| [Input_Result](#input_result) | 若设置轴事件的X坐标成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2136 2137### OH_Input_GetAxisEventDisplayX() 2138 2139``` 2140Input_Result OH_Input_GetAxisEventDisplayX(const Input_AxisEvent* axisEvent, float* displayX) 2141``` 2142 2143**描述** 2144 2145获取轴事件以指定屏幕左上角为原点的相对坐标系的X坐标。 2146 2147**系统能力:** SystemCapability.MultimodalInput.Input.Core 2148 2149**起始版本:** 12 2150 2151 2152**参数:** 2153 2154| 参数项 | 描述 | 2155| -- | -- | 2156| const [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2157| float* displayX | 出参,返回轴事件以指定屏幕左上角为原点的相对坐标系的X坐标。 | 2158 2159**返回:** 2160 2161| 类型 | 说明 | 2162| -- | -- | 2163| [Input_Result](#input_result) | 若获取轴事件的X坐标成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent或者displayX为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2164 2165### OH_Input_SetAxisEventDisplayY() 2166 2167``` 2168Input_Result OH_Input_SetAxisEventDisplayY(Input_AxisEvent* axisEvent, float displayY) 2169``` 2170 2171**描述** 2172 2173设置轴事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 2174 2175**系统能力:** SystemCapability.MultimodalInput.Input.Core 2176 2177**起始版本:** 12 2178 2179 2180**参数:** 2181 2182| 参数项 | 描述 | 2183| -- | -- | 2184| [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2185| float displayY | 轴事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 | 2186 2187**返回:** 2188 2189| 类型 | 说明 | 2190| -- | -- | 2191| [Input_Result](#input_result) | 若设置轴事件的Y坐标成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2192 2193### OH_Input_GetAxisEventDisplayY() 2194 2195``` 2196Input_Result OH_Input_GetAxisEventDisplayY(const Input_AxisEvent* axisEvent, float* displayY) 2197``` 2198 2199**描述** 2200 2201获取轴事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 2202 2203**系统能力:** SystemCapability.MultimodalInput.Input.Core 2204 2205**起始版本:** 12 2206 2207 2208**参数:** 2209 2210| 参数项 | 描述 | 2211| -- | -- | 2212| const [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2213| float* displayY | 出参,返回轴事件以指定屏幕左上角为原点的相对坐标系的Y坐标。 | 2214 2215**返回:** 2216 2217| 类型 | 说明 | 2218| -- | -- | 2219| [Input_Result](#input_result) | 若获取轴事件的Y坐标成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent或者displayY为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2220 2221### OH_Input_SetAxisEventAxisValue() 2222 2223``` 2224Input_Result OH_Input_SetAxisEventAxisValue(Input_AxisEvent* axisEvent,InputEvent_AxisType axisType, double axisValue) 2225``` 2226 2227**描述** 2228 2229设置轴事件指定轴类型的轴值。 2230 2231**系统能力:** SystemCapability.MultimodalInput.Input.Core 2232 2233**起始版本:** 12 2234 2235 2236**参数:** 2237 2238| 参数项 | 描述 | 2239| -- | -- | 2240| [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2241| [InputEvent_AxisType](capi-oh-axis-type-h.md#inputevent_axistype) axisType | 轴类型,具体请参考[InputEvent_AxisType](capi-oh-axis-type-h.md#inputevent_axistype)。 | 2242| double axisValue | 轴事件的值,正数向前滚动(例如,1.0表示向前滚动一个单位),负数向后滚动(例如,-1.0表示向后滚动一个单位),零表示没有滚动。 | 2243 2244**返回:** 2245 2246| 类型 | 说明 | 2247| -- | -- | 2248| [Input_Result](#input_result) | 若设置轴事件指定轴类型的轴值成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2249 2250### OH_Input_GetAxisEventAxisValue() 2251 2252``` 2253Input_Result OH_Input_GetAxisEventAxisValue(const Input_AxisEvent* axisEvent,InputEvent_AxisType axisType, double* axisValue) 2254``` 2255 2256**描述** 2257 2258获取轴事件指定轴类型的轴值。 2259 2260**系统能力:** SystemCapability.MultimodalInput.Input.Core 2261 2262**起始版本:** 12 2263 2264 2265**参数:** 2266 2267| 参数项 | 描述 | 2268| -- | -- | 2269| const [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2270| [InputEvent_AxisType](capi-oh-axis-type-h.md#inputevent_axistype) axisType | 轴类型,具体请参考[InputEvent_AxisType](capi-oh-axis-type-h.md#inputevent_axistype)。 | 2271| double* axisValue | 出参,返回轴事件的值,正数向前滚动(例如,1.0表示向前滚动一个单位),负数向后滚动(例如,-1.0表示向后滚动一个单位),零表示没有滚动。 | 2272 2273**返回:** 2274 2275| 类型 | 说明 | 2276| -- | -- | 2277| [Input_Result](#input_result) | 若获取轴事件指定轴类型的轴值成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent或者axisValue为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2278 2279### OH_Input_SetAxisEventActionTime() 2280 2281``` 2282Input_Result OH_Input_SetAxisEventActionTime(Input_AxisEvent* axisEvent, int64_t actionTime) 2283``` 2284 2285**描述** 2286 2287设置轴事件发生的时间。 2288 2289**系统能力:** SystemCapability.MultimodalInput.Input.Core 2290 2291**起始版本:** 12 2292 2293 2294**参数:** 2295 2296| 参数项 | 描述 | 2297| -- | -- | 2298| [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2299| int64_t actionTime | 轴事件发生的时间,表示从1970.1.1 00:00:00 GMT逝去的微秒数。 | 2300 2301**返回:** 2302 2303| 类型 | 说明 | 2304| -- | -- | 2305| [Input_Result](#input_result) | 若设置轴事件发生的时间成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2306 2307### OH_Input_GetAxisEventActionTime() 2308 2309``` 2310Input_Result OH_Input_GetAxisEventActionTime(const Input_AxisEvent* axisEvent, int64_t* actionTime) 2311``` 2312 2313**描述** 2314 2315获取轴事件发生的时间。 2316 2317**系统能力:** SystemCapability.MultimodalInput.Input.Core 2318 2319**起始版本:** 12 2320 2321 2322**参数:** 2323 2324| 参数项 | 描述 | 2325| -- | -- | 2326| const [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2327| int64_t* actionTime | 出参,返回轴事件发生的时间,表示从1970.1.1 00:00:00 GMT逝去的微秒数。 | 2328 2329**返回:** 2330 2331| 类型 | 说明 | 2332| -- | -- | 2333| [Input_Result](#input_result) | 若获取轴事件发生的时间成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent或者actionTime为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2334 2335### OH_Input_SetAxisEventType() 2336 2337``` 2338Input_Result OH_Input_SetAxisEventType(Input_AxisEvent* axisEvent, InputEvent_AxisEventType axisEventType) 2339``` 2340 2341**描述** 2342 2343设置轴事件类型。 2344 2345**系统能力:** SystemCapability.MultimodalInput.Input.Core 2346 2347**起始版本:** 12 2348 2349 2350**参数:** 2351 2352| 参数项 | 描述 | 2353| -- | -- | 2354| [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2355| [InputEvent_AxisEventType](capi-oh-axis-type-h.md#inputevent_axiseventtype) axisEventType | 轴事件类型,具体请参考[InputEvent_AxisEventType](capi-oh-axis-type-h.md#inputevent_axiseventtype)。 | 2356 2357**返回:** 2358 2359| 类型 | 说明 | 2360| -- | -- | 2361| [Input_Result](#input_result) | 若设置轴事件类型成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2362 2363### OH_Input_GetAxisEventType() 2364 2365``` 2366Input_Result OH_Input_GetAxisEventType(const Input_AxisEvent* axisEvent, InputEvent_AxisEventType* axisEventType) 2367``` 2368 2369**描述** 2370 2371获取轴事件类型。 2372 2373**系统能力:** SystemCapability.MultimodalInput.Input.Core 2374 2375**起始版本:** 12 2376 2377 2378**参数:** 2379 2380| 参数项 | 描述 | 2381| -- | -- | 2382| const [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2383| [InputEvent_AxisEventType](capi-oh-axis-type-h.md#inputevent_axiseventtype)* axisEventType | 出参,返回轴事件类型,具体请参考[InputEvent_AxisEventType](capi-oh-axis-type-h.md#inputevent_axiseventtype)。 | 2384 2385**返回:** 2386 2387| 类型 | 说明 | 2388| -- | -- | 2389| [Input_Result](#input_result) | 若获取轴事件类型成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent或者axisEventType为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2390 2391### OH_Input_SetAxisEventSourceType() 2392 2393``` 2394Input_Result OH_Input_SetAxisEventSourceType(Input_AxisEvent* axisEvent, InputEvent_SourceType sourceType) 2395``` 2396 2397**描述** 2398 2399设置轴事件源类型。 2400 2401**系统能力:** SystemCapability.MultimodalInput.Input.Core 2402 2403**起始版本:** 12 2404 2405 2406**参数:** 2407 2408| 参数项 | 描述 | 2409| -- | -- | 2410| [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2411| [InputEvent_SourceType](#inputevent_sourcetype) sourceType | 轴事件源类型,具体请参考[InputEvent_SourceType](#inputevent_sourcetype)。 | 2412 2413**返回:** 2414 2415| 类型 | 说明 | 2416| -- | -- | 2417| [Input_Result](#input_result) | 若设置轴事件源类型成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2418 2419### OH_Input_GetAxisEventSourceType() 2420 2421``` 2422Input_Result OH_Input_GetAxisEventSourceType(const Input_AxisEvent* axisEvent, InputEvent_SourceType* sourceType) 2423``` 2424 2425**描述** 2426 2427获取轴事件源类型。 2428 2429**系统能力:** SystemCapability.MultimodalInput.Input.Core 2430 2431**起始版本:** 12 2432 2433 2434**参数:** 2435 2436| 参数项 | 描述 | 2437| -- | -- | 2438| const [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2439| [InputEvent_SourceType](#inputevent_sourcetype)* sourceType | 出参,返回轴事件源类型,具体请参考[InputEvent_SourceType](#inputevent_sourcetype)。 | 2440 2441**返回:** 2442 2443| 类型 | 说明 | 2444| -- | -- | 2445| [Input_Result](#input_result) | 若获取轴事件源类型成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent或者sourceType为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2446 2447### OH_Input_SetAxisEventWindowId() 2448 2449``` 2450Input_Result OH_Input_SetAxisEventWindowId(Input_AxisEvent* axisEvent, int32_t windowId) 2451``` 2452 2453**描述** 2454 2455设置轴事件的窗口Id。 2456 2457**系统能力:** SystemCapability.MultimodalInput.Input.Core 2458 2459**起始版本:** 15 2460 2461 2462**参数:** 2463 2464| 参数项 | 描述 | 2465| -- | -- | 2466| [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2467| int32_t windowId | 轴事件窗口Id。 | 2468 2469**返回:** 2470 2471| 类型 | 说明 | 2472| -- | -- | 2473| [Input_Result](#input_result) | 若设置轴事件的窗口Id成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2474 2475### OH_Input_GetAxisEventWindowId() 2476 2477``` 2478Input_Result OH_Input_GetAxisEventWindowId(const Input_AxisEvent* axisEvent, int32_t* windowId) 2479``` 2480 2481**描述** 2482 2483获取轴事件的窗口Id。 2484 2485**系统能力:** SystemCapability.MultimodalInput.Input.Core 2486 2487**起始版本:** 15 2488 2489 2490**参数:** 2491 2492| 参数项 | 描述 | 2493| -- | -- | 2494| const [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2495| int32_t* windowId | 出参,返回轴事件窗口Id。 | 2496 2497**返回:** 2498 2499| 类型 | 说明 | 2500| -- | -- | 2501| [Input_Result](#input_result) | 若获取轴事件的窗口Id成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent或者windowId为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2502 2503### OH_Input_SetAxisEventDisplayId() 2504 2505``` 2506Input_Result OH_Input_SetAxisEventDisplayId(Input_AxisEvent* axisEvent, int32_t displayId) 2507``` 2508 2509**描述** 2510 2511设置轴事件的屏幕Id。 2512 2513**系统能力:** SystemCapability.MultimodalInput.Input.Core 2514 2515**起始版本:** 15 2516 2517 2518**参数:** 2519 2520| 参数项 | 描述 | 2521| -- | -- | 2522| [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2523| int32_t displayId | 轴事件屏幕Id。 | 2524 2525**返回:** 2526 2527| 类型 | 说明 | 2528| -- | -- | 2529| [Input_Result](#input_result) | 若设置轴事件的屏幕Id成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2530 2531### OH_Input_GetAxisEventDisplayId() 2532 2533``` 2534Input_Result OH_Input_GetAxisEventDisplayId(const Input_AxisEvent* axisEvent, int32_t* displayId) 2535``` 2536 2537**描述** 2538 2539获取轴事件的屏幕Id。 2540 2541**系统能力:** SystemCapability.MultimodalInput.Input.Core 2542 2543**起始版本:** 15 2544 2545 2546**参数:** 2547 2548| 参数项 | 描述 | 2549| -- | -- | 2550| const [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 2551| int32_t* displayId | 出参,返回轴事件屏幕Id。 | 2552 2553**返回:** 2554 2555| 类型 | 说明 | 2556| -- | -- | 2557| [Input_Result](#input_result) | 若获取轴事件的屏幕Id成功,则返回[INPUT_SUCCESS](#input_result);若axisEvent或者displayId为NULL,则返回[INPUT_PARAMETER_ERROR](#input_result)。 | 2558 2559### OH_Input_AddKeyEventMonitor() 2560 2561``` 2562Input_Result OH_Input_AddKeyEventMonitor(Input_KeyEventCallback callback) 2563``` 2564 2565**描述** 2566 2567添加按键事件监听。 2568 2569**系统能力:** SystemCapability.MultimodalInput.Input.Core 2570 2571**需要权限:** ohos.permission.INPUT_MONITORING 2572 2573**起始版本:** 12 2574 2575 2576**参数:** 2577 2578| 参数项 | 描述 | 2579| -- | -- | 2580| [Input_KeyEventCallback](#input_keyeventcallback) callback | 回调函数,用于接收按键事件。 | 2581 2582**返回:** 2583 2584| 类型 | 说明 | 2585| -- | -- | 2586| [Input_Result](#input_result) | 若添加按键事件监听成功,则返回[INPUT_SUCCESS](#input_result);若权限校验失败,则返回[INPUT_PERMISSION_DENIED](#input_result);<br> 若callback为空,则返回[INPUT_PARAMETER_ERROR](#input_result);若服务异常,则返回[INPUT_SERVICE_EXCEPTION](#input_result)。 | 2587 2588### OH_Input_AddMouseEventMonitor() 2589 2590``` 2591Input_Result OH_Input_AddMouseEventMonitor(Input_MouseEventCallback callback) 2592``` 2593 2594**描述** 2595 2596添加鼠标事件监听,包含鼠标点击,移动,不包含滚轮事件,滚轮事件归属于轴事件。 2597 2598**系统能力:** SystemCapability.MultimodalInput.Input.Core 2599 2600**需要权限:** ohos.permission.INPUT_MONITORING 2601 2602**起始版本:** 12 2603 2604 2605**参数:** 2606 2607| 参数项 | 描述 | 2608| -- | -- | 2609| [Input_MouseEventCallback](#input_mouseeventcallback) callback | 回调函数,用于接收鼠标事件。 | 2610 2611**返回:** 2612 2613| 类型 | 说明 | 2614| -- | -- | 2615| [Input_Result](#input_result) | 若添加鼠标事件监听成功,则返回[INPUT_SUCCESS](#input_result);若权限校验失败,则返回[INPUT_PERMISSION_DENIED](#input_result);<br> 若callback为空,则返回[INPUT_PARAMETER_ERROR](#input_result);若服务异常,则返回[INPUT_SERVICE_EXCEPTION](#input_result)。 | 2616 2617### OH_Input_AddTouchEventMonitor() 2618 2619``` 2620Input_Result OH_Input_AddTouchEventMonitor(Input_TouchEventCallback callback) 2621``` 2622 2623**描述** 2624 2625添加触屏事件监听。 2626 2627**系统能力:** SystemCapability.MultimodalInput.Input.Core 2628 2629**需要权限:** ohos.permission.INPUT_MONITORING 2630 2631**起始版本:** 12 2632 2633 2634**参数:** 2635 2636| 参数项 | 描述 | 2637| -- | -- | 2638| [Input_TouchEventCallback](#input_toucheventcallback) callback | 回调函数,用于接收触屏事件。 | 2639 2640**返回:** 2641 2642| 类型 | 说明 | 2643| -- | -- | 2644| [Input_Result](#input_result) | 若添加触屏事件监听成功,则返回[INPUT_SUCCESS](#input_result);若权限校验失败,则返回[INPUT_PERMISSION_DENIED](#input_result);<br> 若callback为空,则返回[INPUT_PARAMETER_ERROR](#input_result);若服务异常,则返回[INPUT_SERVICE_EXCEPTION](#input_result)。 | 2645 2646### OH_Input_AddAxisEventMonitorForAll() 2647 2648``` 2649Input_Result OH_Input_AddAxisEventMonitorForAll(Input_AxisEventCallback callback) 2650``` 2651 2652**描述** 2653 2654添加所有类型轴事件监听,轴事件类型定义在[InputEvent_AxisEventType](capi-oh-axis-type-h.md#inputevent_axiseventtype)中。 2655 2656**系统能力:** SystemCapability.MultimodalInput.Input.Core 2657 2658**需要权限:** ohos.permission.INPUT_MONITORING 2659 2660**起始版本:** 12 2661 2662 2663**参数:** 2664 2665| 参数项 | 描述 | 2666| -- | -- | 2667| [Input_AxisEventCallback](#input_axiseventcallback) callback | 回调函数,用于接收轴事件。 | 2668 2669**返回:** 2670 2671| 类型 | 说明 | 2672| -- | -- | 2673| [Input_Result](#input_result) | 若添加轴事件监听成功,则返回[INPUT_SUCCESS](#input_result);若权限校验失败,则返回[INPUT_PERMISSION_DENIED](#input_result);<br> 若callback为空,则返回[INPUT_PARAMETER_ERROR](#input_result);若服务异常,则返回[INPUT_SERVICE_EXCEPTION](#input_result)。 | 2674 2675### OH_Input_AddAxisEventMonitor() 2676 2677``` 2678Input_Result OH_Input_AddAxisEventMonitor(InputEvent_AxisEventType axisEventType, Input_AxisEventCallback callback) 2679``` 2680 2681**描述** 2682 2683添加指定类型的轴事件监听,轴事件类型定义在[InputEvent_AxisEventType](capi-oh-axis-type-h.md#inputevent_axiseventtype)中。 2684 2685**系统能力:** SystemCapability.MultimodalInput.Input.Core 2686 2687**需要权限:** ohos.permission.INPUT_MONITORING 2688 2689**起始版本:** 12 2690 2691 2692**参数:** 2693 2694| 参数项 | 描述 | 2695| -- | -- | 2696| [InputEvent_AxisEventType](capi-oh-axis-type-h.md#inputevent_axiseventtype) axisEventType | 要监听的轴事件类型,轴事件类型定义在[InputEvent_AxisEventType](capi-oh-axis-type-h.md#inputevent_axiseventtype)中。 | 2697| [Input_AxisEventCallback](#input_axiseventcallback) callback | 回调函数,用于接收指定类型的轴事件 | 2698 2699**返回:** 2700 2701| 类型 | 说明 | 2702| -- | -- | 2703| [Input_Result](#input_result) | 若添加轴事件监听成功,则返回[INPUT_SUCCESS](#input_result);若权限校验失败,则返回[INPUT_PERMISSION_DENIED](#input_result);<br> 若callback为空,则返回[INPUT_PARAMETER_ERROR](#input_result);若服务异常,则返回[INPUT_SERVICE_EXCEPTION](#input_result)。 | 2704 2705### OH_Input_RemoveKeyEventMonitor() 2706 2707``` 2708Input_Result OH_Input_RemoveKeyEventMonitor(Input_KeyEventCallback callback) 2709``` 2710 2711**描述** 2712 2713移除按键事件监听。 2714 2715**系统能力:** SystemCapability.MultimodalInput.Input.Core 2716 2717**需要权限:** ohos.permission.INPUT_MONITORING 2718 2719**起始版本:** 12 2720 2721 2722**参数:** 2723 2724| 参数项 | 描述 | 2725| -- | -- | 2726| [Input_KeyEventCallback](#input_keyeventcallback) callback | 指定要被移除的用于按键事件监听的回调函数。 | 2727 2728**返回:** 2729 2730| 类型 | 说明 | 2731| -- | -- | 2732| [Input_Result](#input_result) | 若移除按键事件监听成功,则返回[INPUT_SUCCESS](#input_result);若权限校验失败,则返回[INPUT_PERMISSION_DENIED](#input_result);<br> 若callback为空或者没有被添加监听,则返回[INPUT_PARAMETER_ERROR](#input_result);若服务异常,则返回[INPUT_SERVICE_EXCEPTION](#input_result)。 | 2733 2734### OH_Input_RemoveMouseEventMonitor() 2735 2736``` 2737Input_Result OH_Input_RemoveMouseEventMonitor(Input_MouseEventCallback callback) 2738``` 2739 2740**描述** 2741 2742移除鼠标事件监听。 2743 2744**系统能力:** SystemCapability.MultimodalInput.Input.Core 2745 2746**需要权限:** ohos.permission.INPUT_MONITORING 2747 2748**起始版本:** 12 2749 2750 2751**参数:** 2752 2753| 参数项 | 描述 | 2754| -- | -- | 2755| [Input_MouseEventCallback](#input_mouseeventcallback) callback | 指定要被移除的用于鼠标事件监听的回调函数。 | 2756 2757**返回:** 2758 2759| 类型 | 说明 | 2760| -- | -- | 2761| [Input_Result](#input_result) | 若移除鼠标事件监听成功,则返回[INPUT_SUCCESS](#input_result);若权限校验失败,则返回[INPUT_PERMISSION_DENIED](#input_result);<br> 若callback为空或者没有被添加监听,则返回[INPUT_PARAMETER_ERROR](#input_result);若服务异常,则返回[INPUT_SERVICE_EXCEPTION](#input_result)。 | 2762 2763### OH_Input_RemoveTouchEventMonitor() 2764 2765``` 2766Input_Result OH_Input_RemoveTouchEventMonitor(Input_TouchEventCallback callback) 2767``` 2768 2769**描述** 2770 2771移除触屏事件监听。 2772 2773**系统能力:** SystemCapability.MultimodalInput.Input.Core 2774 2775**需要权限:** ohos.permission.INPUT_MONITORING 2776 2777**起始版本:** 12 2778 2779 2780**参数:** 2781 2782| 参数项 | 描述 | 2783| -- | -- | 2784| [Input_TouchEventCallback](#input_toucheventcallback) callback | 指定要被移除的用于触屏事件监听的回调函数。 | 2785 2786**返回:** 2787 2788| 类型 | 说明 | 2789| -- | -- | 2790| [Input_Result](#input_result) | 若移除触屏事件监听成功,则返回[INPUT_SUCCESS](#input_result);若权限校验失败,则返回[INPUT_PERMISSION_DENIED](#input_result);<br> 若callback为空或者没有被添加监听,则返回[INPUT_PARAMETER_ERROR](#input_result);若服务异常,则返回[INPUT_SERVICE_EXCEPTION](#input_result)。 | 2791 2792### OH_Input_RemoveAxisEventMonitorForAll() 2793 2794``` 2795Input_Result OH_Input_RemoveAxisEventMonitorForAll(Input_AxisEventCallback callback) 2796``` 2797 2798**描述** 2799 2800移除所有类型轴事件监听。 2801 2802**系统能力:** SystemCapability.MultimodalInput.Input.Core 2803 2804**需要权限:** ohos.permission.INPUT_MONITORING 2805 2806**起始版本:** 12 2807 2808 2809**参数:** 2810 2811| 参数项 | 描述 | 2812| -- | -- | 2813| [Input_AxisEventCallback](#input_axiseventcallback) callback | 指定要被移除的用于所有类型轴事件监听的回调函数。 | 2814 2815**返回:** 2816 2817| 类型 | 说明 | 2818| -- | -- | 2819| [Input_Result](#input_result) | 若移除轴事件监听成功,则返回[INPUT_SUCCESS](#input_result);若权限校验失败,则返回[INPUT_PERMISSION_DENIED](#input_result);<br> 若callback为空或者没有被添加监听,则返回[INPUT_PARAMETER_ERROR](#input_result);若服务异常,则返回[INPUT_SERVICE_EXCEPTION](#input_result)。 | 2820 2821### OH_Input_RemoveAxisEventMonitor() 2822 2823``` 2824Input_Result OH_Input_RemoveAxisEventMonitor(InputEvent_AxisEventType axisEventType, Input_AxisEventCallback callback) 2825``` 2826 2827**描述** 2828 2829移除指定类型轴事件监听,轴事件类型定义在[InputEvent_AxisEventType](capi-oh-axis-type-h.md#inputevent_axiseventtype)中。 2830 2831**系统能力:** SystemCapability.MultimodalInput.Input.Core 2832 2833**需要权限:** ohos.permission.INPUT_MONITORING 2834 2835**起始版本:** 12 2836 2837 2838**参数:** 2839 2840| 参数项 | 描述 | 2841| -- | -- | 2842| [InputEvent_AxisEventType](capi-oh-axis-type-h.md#inputevent_axiseventtype) axisEventType | 指定要移除监听的轴事件类型,轴事件类型定义在[InputEvent_AxisEventType](capi-oh-axis-type-h.md#inputevent_axiseventtype)中。 | 2843| [Input_AxisEventCallback](#input_axiseventcallback) callback | 指定要被移除的用于指定类型轴事件监听的回调函数。 | 2844 2845**返回:** 2846 2847| 类型 | 说明 | 2848| -- | -- | 2849| [Input_Result](#input_result) | 若移除轴事件监听成功,则返回[INPUT_SUCCESS](#input_result);若权限校验失败,则返回[INPUT_PERMISSION_DENIED](#input_result);<br> 若callback为空或者没有被添加监听,则返回[INPUT_PARAMETER_ERROR](#input_result);若服务异常,则返回[INPUT_SERVICE_EXCEPTION](#input_result)。 | 2850 2851### OH_Input_AddKeyEventInterceptor() 2852 2853``` 2854Input_Result OH_Input_AddKeyEventInterceptor(Input_KeyEventCallback callback, Input_InterceptorOptions *option) 2855``` 2856 2857**描述** 2858 2859添加按键事件的拦截,重复添加只有第一次生效。仅在应用获焦时拦截按键事件。 2860 2861**系统能力:** SystemCapability.MultimodalInput.Input.Core 2862 2863**需要权限:** ohos.permission.INTERCEPT_INPUT_EVENT 2864 2865**起始版本:** 12 2866 2867 2868**参数:** 2869 2870| 参数项 | 描述 | 2871| -- | -- | 2872| [Input_KeyEventCallback](#input_keyeventcallback) callback | 回调函数,用于接收按键事件。 | 2873| [Input_InterceptorOptions](capi-input-input-interceptoroptions.md) *option | option 输入事件拦截的可选项,传null则使用默认值。 | 2874 2875**返回:** 2876 2877| 类型 | 说明 | 2878| -- | -- | 2879| [Input_Result](#input_result) | 若添加按键事件的拦截成功,则返回[INPUT_SUCCESS](#input_result);若权限校验失败,则返回[INPUT_PERMISSION_DENIED](#input_result);<br> 若callback为空,则返回[INPUT_PARAMETER_ERROR](#input_result);若重复添加拦截器,则返回[INPUT_REPEAT_INTERCEPTOR](#input_result);<br> 若服务异常;则返回[INPUT_SERVICE_EXCEPTION](#input_result)。 | 2880 2881### OH_Input_AddInputEventInterceptor() 2882 2883``` 2884Input_Result OH_Input_AddInputEventInterceptor(Input_InterceptorEventCallback *callback,Input_InterceptorOptions *option) 2885``` 2886 2887**描述** 2888 2889添加输入事件拦截,包括鼠标、触屏和轴事件,重复添加只有第一次生效。仅命中应用窗口时拦截输入事件。 2890 2891**系统能力:** SystemCapability.MultimodalInput.Input.Core 2892 2893**需要权限:** ohos.permission.INTERCEPT_INPUT_EVENT 2894 2895**起始版本:** 12 2896 2897 2898**参数:** 2899 2900| 参数项 | 描述 | 2901| -- | -- | 2902| [Input_InterceptorEventCallback](capi-input-input-interceptoreventcallback.md) *callback | callback 用于回调输入事件的结构体指针,请参考定义[Input_InterceptorEventCallback](capi-input-input-interceptoreventcallback.md)。 | 2903| [Input_InterceptorOptions](capi-input-input-interceptoroptions.md) *option | option 输入事件拦截的可选项,传null则使用默认值。 | 2904 2905**返回:** 2906 2907| 类型 | 说明 | 2908| -- | -- | 2909| [Input_Result](#input_result) | 若添加输入事件的拦截成功,则返回[INPUT_SUCCESS](#input_result);若权限校验失败,则返回[INPUT_PERMISSION_DENIED](#input_result);<br> 若callback为空,则返回[INPUT_PARAMETER_ERROR](#input_result);若重复添加拦截器,则返回[INPUT_REPEAT_INTERCEPTOR](#input_result);<br> 若服务异常;则返回[INPUT_SERVICE_EXCEPTION](#input_result)。 | 2910 2911### OH_Input_RemoveKeyEventInterceptor() 2912 2913``` 2914Input_Result OH_Input_RemoveKeyEventInterceptor(void) 2915``` 2916 2917**描述** 2918 2919移除按键事件拦截。 2920 2921**系统能力:** SystemCapability.MultimodalInput.Input.Core 2922 2923**需要权限:** ohos.permission.INTERCEPT_INPUT_EVENT 2924 2925**起始版本:** 12 2926 2927**返回:** 2928 2929| 类型 | 说明 | 2930| -- | -- | 2931| [Input_Result](#input_result) | 若移除按键事件拦截成功,则返回[INPUT_SUCCESS](#input_result);若权限校验失败,则返回[INPUT_PERMISSION_DENIED](#input_result);<br> 若服务异常,则返回[INPUT_SERVICE_EXCEPTION](#input_result)。 | 2932 2933### OH_Input_RemoveInputEventInterceptor() 2934 2935``` 2936Input_Result OH_Input_RemoveInputEventInterceptor(void) 2937``` 2938 2939**描述** 2940 2941移除输入事件拦截,包括鼠标、触屏和轴事件。 2942 2943**系统能力:** SystemCapability.MultimodalInput.Input.Core 2944 2945**需要权限:** ohos.permission.INTERCEPT_INPUT_EVENT 2946 2947**起始版本:** 12 2948 2949**返回:** 2950 2951| 类型 | 说明 | 2952| -- | -- | 2953| [Input_Result](#input_result) | 若移除输入事件拦截成功,则返回[INPUT_SUCCESS](#input_result);若权限校验失败,则返回[INPUT_PERMISSION_DENIED](#input_result);<br> 若服务异常,则返回[INPUT_SERVICE_EXCEPTION](#input_result)。 | 2954 2955### OH_Input_GetIntervalSinceLastInput() 2956 2957``` 2958Input_Result OH_Input_GetIntervalSinceLastInput(int64_t *timeInterval) 2959``` 2960 2961**描述** 2962 2963获取距离上次系统输入事件的时间间隔。 2964 2965**系统能力:** SystemCapability.MultimodalInput.Input.Core 2966 2967**起始版本:** 14 2968 2969 2970**参数:** 2971 2972| 参数项 | 描述 | 2973| -- | -- | 2974| int64_t *timeInterval | timeInterval 时间间隔,单位为微秒。 | 2975 2976**返回:** 2977 2978| 类型 | 说明 | 2979| -- | -- | 2980| [Input_Result](#input_result) | OH_Input_GetIntervalSinceLastInput 函数错误码。<br> 若获取时间间隔成功,则返回[INPUT_SUCCESS](#input_result);若获取失败,返回[INPUT_SERVICE_EXCEPTION](#input_result)。 | 2981 2982### OH_Input_CreateHotkey() 2983 2984``` 2985Input_Hotkey *OH_Input_CreateHotkey(void) 2986``` 2987 2988**描述** 2989 2990创建快捷键对象的实例。 2991 2992**系统能力:** SystemCapability.MultimodalInput.Input.Core 2993 2994**起始版本:** 14 2995 2996**返回:** 2997 2998| 类型 | 说明 | 2999| -- | -- | 3000| [Input_Hotkey](capi-input-input-hotkey.md) | 如果操作成功,则返回一个[Input_Hotkey](capi-input-input-hotkey.md)指针对象。否则, 返回一个空指针, 可能的原因是内存分配失败。 | 3001 3002### OH_Input_DestroyHotkey() 3003 3004``` 3005void OH_Input_DestroyHotkey(Input_Hotkey **hotkey) 3006``` 3007 3008**描述** 3009 3010销毁快捷键对象的实例。 3011 3012**系统能力:** SystemCapability.MultimodalInput.Input.Core 3013 3014**起始版本:** 14 3015 3016 3017**参数:** 3018 3019| 参数项 | 描述 | 3020| -- | -- | 3021| [Input_Hotkey](capi-input-input-hotkey.md) **hotkey | hotkey 快捷键对象的实例。 | 3022 3023### OH_Input_SetPreKeys() 3024 3025``` 3026void OH_Input_SetPreKeys(Input_Hotkey *hotkey, int32_t *preKeys, int32_t size) 3027``` 3028 3029**描述** 3030 3031设置修饰键。 3032 3033**系统能力:** SystemCapability.MultimodalInput.Input.Core 3034 3035**起始版本:** 14 3036 3037 3038**参数:** 3039 3040| 参数项 | 描述 | 3041| -- | -- | 3042| [Input_Hotkey](capi-input-input-hotkey.md) *hotkey | hotkey 快捷键对象的实例。 | 3043| int32_t *preKeys | preKeys 修饰键列表。 | 3044| int32_t size | 修饰键个数, 取值范围1~2个。 | 3045 3046### OH_Input_GetPreKeys() 3047 3048``` 3049Input_Result OH_Input_GetPreKeys(const Input_Hotkey *hotkey, int32_t **preKeys, int32_t *preKeyCount) 3050``` 3051 3052**描述** 3053 3054获取修饰键。 3055 3056**系统能力:** SystemCapability.MultimodalInput.Input.Core 3057 3058**起始版本:** 14 3059 3060 3061**参数:** 3062 3063| 参数项 | 描述 | 3064| -- | -- | 3065| const [Input_Hotkey](capi-input-input-hotkey.md) *hotkey | hotkey 快捷键对象的实例。 | 3066| int32_t **preKeys | preKeys 返回修饰键列表。 | 3067| int32_t *preKeyCount | preKeyCount 返回修饰键个数。 | 3068 3069**返回:** 3070 3071| 类型 | 说明 | 3072| -- | -- | 3073| [Input_Result](#input_result) | OH_Input_GetPreKeys 函数错误码。<br> 若获取成功,返回[INPUT_SUCCESS](#input_result);若获取失败,返回[INPUT_PARAMETER_ERROR](#input_result)。 | 3074 3075### OH_Input_SetFinalKey() 3076 3077``` 3078void OH_Input_SetFinalKey(Input_Hotkey* hotkey, int32_t finalKey) 3079``` 3080 3081**描述** 3082 3083设置被修饰键。 3084 3085**系统能力:** SystemCapability.MultimodalInput.Input.Core 3086 3087**起始版本:** 14 3088 3089 3090**参数:** 3091 3092| 参数项 | 描述 | 3093| -- | -- | 3094| [Input_Hotkey](capi-input-input-hotkey.md)* hotkey | 快捷键对象的实例。 | 3095| int32_t finalKey | 被修饰键值,被修饰键值只能是1个。 | 3096 3097### OH_Input_GetFinalKey() 3098 3099``` 3100Input_Result OH_Input_GetFinalKey(const Input_Hotkey* hotkey, int32_t *finalKeyCode) 3101``` 3102 3103**描述** 3104 3105获取被修饰键。 3106 3107**系统能力:** SystemCapability.MultimodalInput.Input.Core 3108 3109**起始版本:** 14 3110 3111 3112**参数:** 3113 3114| 参数项 | 描述 | 3115| -- | -- | 3116| const [Input_Hotkey](capi-input-input-hotkey.md)* hotkey | 快捷键对象的实例。 | 3117| int32_t *finalKeyCode | finalKeyCode 返回被修饰键键值。 | 3118 3119**返回:** 3120 3121| 类型 | 说明 | 3122| -- | -- | 3123| [Input_Result](#input_result) | OH_Input_GetFinalKey 函数错误码。<br> 若获取成功,返回[INPUT_SUCCESS](#input_result);<br> 若获取失败,返回[INPUT_PARAMETER_ERROR](#input_result)。 | 3124 3125### OH_Input_CreateAllSystemHotkeys() 3126 3127``` 3128Input_Hotkey **OH_Input_CreateAllSystemHotkeys(int32_t count) 3129``` 3130 3131**描述** 3132 3133创建[Input_Hotkey](capi-input-input-hotkey.md)类型实例的数组。 3134 3135**系统能力:** SystemCapability.MultimodalInput.Input.Core 3136 3137**起始版本:** 14 3138 3139 3140**参数:** 3141 3142| 参数项 | 描述 | 3143| -- | -- | 3144| int32_t count | 创建[Input_Hotkey](capi-input-input-hotkey.md)实例的数量。 | 3145 3146**返回:** 3147 3148| 类型 | 说明 | 3149| -- | -- | 3150| [Input_Hotkey](capi-input-input-hotkey.md) | OH_Input_CreateAllSystemHotkeys 函数错误码。<br> [INPUT_SUCCESS](#input_result) 创建实例数组的双指针成功。 | 3151 3152### OH_Input_DestroyAllSystemHotkeys() 3153 3154``` 3155void OH_Input_DestroyAllSystemHotkeys(Input_Hotkey **hotkeys, int32_t count) 3156``` 3157 3158**描述** 3159 3160销毁[Input_Hotkey](capi-input-input-hotkey.md)实例数组并回收内存。 3161 3162**系统能力:** SystemCapability.MultimodalInput.Input.Core 3163 3164**起始版本:** 14 3165 3166 3167**参数:** 3168 3169| 参数项 | 描述 | 3170| -- | -- | 3171| [Input_Hotkey](capi-input-input-hotkey.md) **hotkeys | hotkeys 指向[Input_Hotkey](capi-input-input-hotkey.md)实例数组的双指针。 | 3172| int32_t count | 销毁[Input_Hotkey](capi-input-input-hotkey.md)实例的数量。 | 3173 3174### OH_Input_GetAllSystemHotkeys() 3175 3176``` 3177Input_Result OH_Input_GetAllSystemHotkeys(Input_Hotkey **hotkey, int32_t *count) 3178``` 3179 3180**描述** 3181 3182获取设置的所有快捷键。 3183 3184**系统能力:** SystemCapability.MultimodalInput.Input.Core 3185 3186**起始版本:** 14 3187 3188 3189**参数:** 3190 3191| 参数项 | 描述 | 3192| -- | -- | 3193| [Input_Hotkey](capi-input-input-hotkey.md) **hotkey | hotkey 返回[Input_Hotkey](capi-input-input-hotkey.md) 类型实例数组。首次调用可传入NULL,可获取数组长度。 | 3194| int32_t *count | count 返回支持快捷键的个数。 | 3195 3196**返回:** 3197 3198| 类型 | 说明 | 3199| -- | -- | 3200| [Input_Result](#input_result) | OH_Input_GetAllSystemHotkeys 函数错误码。<br> 若获取成功,返回[INPUT_SUCCESS](#input_result);<br> 若获取失败,返回[INPUT_PARAMETER_ERROR](#input_result)。 | 3201 3202### OH_Input_SetRepeat() 3203 3204``` 3205void OH_Input_SetRepeat(Input_Hotkey* hotkey, bool isRepeat) 3206``` 3207 3208**描述** 3209 3210设置是否上报重复key事件。 3211 3212**系统能力:** SystemCapability.MultimodalInput.Input.Core 3213 3214**起始版本:** 14 3215 3216 3217**参数:** 3218 3219| 参数项 | 描述 | 3220| -- | -- | 3221| [Input_Hotkey](capi-input-input-hotkey.md)* hotkey | 快捷键对象的实例。 | 3222| bool isRepeat | 是否上报重复key事件。true表示上报,false表示不上报。 | 3223 3224### OH_Input_GetRepeat() 3225 3226``` 3227Input_Result OH_Input_GetRepeat(const Input_Hotkey* hotkey, bool *isRepeat) 3228``` 3229 3230**描述** 3231 3232获取是否上报重复key事件。 3233 3234**系统能力:** SystemCapability.MultimodalInput.Input.Core 3235 3236**起始版本:** 14 3237 3238 3239**参数:** 3240 3241| 参数项 | 描述 | 3242| -- | -- | 3243| const [Input_Hotkey](capi-input-input-hotkey.md)* hotkey | 快捷键对象的实例。 | 3244| bool *isRepeat | isRepeat 返回Key事件是否重复。 | 3245 3246**返回:** 3247 3248| 类型 | 说明 | 3249| -- | -- | 3250| [Input_Result](#input_result) | OH_Input_GetRepeat 函数错误码。<br> 若获取成功,返回[INPUT_SUCCESS](#input_result);<br> 若获取失败,返回[INPUT_PARAMETER_ERROR](#input_result)。 | 3251 3252### OH_Input_AddHotkeyMonitor() 3253 3254``` 3255Input_Result OH_Input_AddHotkeyMonitor(const Input_Hotkey* hotkey, Input_HotkeyCallback callback) 3256``` 3257 3258**描述** 3259 3260订阅快捷键事件。此接口在智能穿戴、轻量级智能穿戴设备不生效。 3261 3262**系统能力:** SystemCapability.MultimodalInput.Input.Core 3263 3264**起始版本:** 14 3265 3266 3267**参数:** 3268 3269| 参数项 | 描述 | 3270| -- | -- | 3271| const [Input_Hotkey](capi-input-input-hotkey.md)* hotkey | 指定要订阅的快捷键对象。 | 3272| [Input_HotkeyCallback](#input_hotkeycallback) callback | 回调函数,用于回调快捷键事件。 | 3273 3274**返回:** 3275 3276| 类型 | 说明 | 3277| -- | -- | 3278| [Input_Result](#input_result) | OH_Input_AddHotkeyMonitor 函数错误码。<br> [INPUT_SUCCESS](#input_result) 表示订阅组合按键成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 参数检查失败。<br> [INPUT_OCCUPIED_BY_SYSTEM](#input_result) 该快捷键已被系统占用,可以通过接口[OH_Input_GetAllSystemHotkeys](#oh_input_getallsystemhotkeys)查询所有的系统快捷键。<br> [INPUT_OCCUPIED_BY_OTHER](#input_result) 已被抢占订阅。<br> [INPUT_DEVICE_NOT_SUPPORTED](#input_result) 表示功能不受支持。 | 3279 3280### OH_Input_RemoveHotkeyMonitor() 3281 3282``` 3283Input_Result OH_Input_RemoveHotkeyMonitor(const Input_Hotkey* hotkey, Input_HotkeyCallback callback) 3284``` 3285 3286**描述** 3287 3288取消订阅快捷键。 3289 3290**系统能力:** SystemCapability.MultimodalInput.Input.Core 3291 3292**起始版本:** 14 3293 3294 3295**参数:** 3296 3297| 参数项 | 描述 | 3298| -- | -- | 3299| const [Input_Hotkey](capi-input-input-hotkey.md)* hotkey | 指定要取消订阅的快捷键对象。 | 3300| [Input_HotkeyCallback](#input_hotkeycallback) callback | 回调函数,用于回调快捷键事件。 | 3301 3302**返回:** 3303 3304| 类型 | 说明 | 3305| -- | -- | 3306| [Input_Result](#input_result) | OH_Input_RemoveHotkeyMonitor 函数错误码。<br> [INPUT_SUCCESS](#input_result) 取消订阅组合按键成功, [INPUT_PARAMETER_ERROR](#input_result) 参数检查失败。 | 3307 3308### OH_Input_RegisterDeviceListener() 3309 3310``` 3311Input_Result OH_Input_RegisterDeviceListener(Input_DeviceListener* listener) 3312``` 3313 3314**描述** 3315 3316注册设备热插拔的监听器。 3317 3318**系统能力:** SystemCapability.MultimodalInput.Input.Core 3319 3320**起始版本:** 13 3321 3322 3323**参数:** 3324 3325| 参数项 | 描述 | 3326| -- | -- | 3327| [Input_DeviceListener](capi-input-input-devicelistener.md)* listener | 指向设备热插拔监听器[Input_DeviceListener](capi-input-input-devicelistener.md)的指针。 | 3328 3329**返回:** 3330 3331| 类型 | 说明 | 3332| -- | -- | 3333| [Input_Result](#input_result) | OH_Input_RegisterDeviceListener 的返回值。<br> [INPUT_SUCCESS](#input_result) 表示注册成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示listener 为NULL。 | 3334 3335### OH_Input_UnregisterDeviceListener() 3336 3337``` 3338Input_Result OH_Input_UnregisterDeviceListener(Input_DeviceListener* listener) 3339``` 3340 3341**描述** 3342 3343取消注册设备热插拔的监听。 3344 3345**系统能力:** SystemCapability.MultimodalInput.Input.Core 3346 3347**起始版本:** 13 3348 3349 3350**参数:** 3351 3352| 参数项 | 描述 | 3353| -- | -- | 3354| [Input_DeviceListener](capi-input-input-devicelistener.md)* listener | 指向设备热插拔监听器[Input_DeviceListener](capi-input-input-devicelistener.md)的指针。 | 3355 3356**返回:** 3357 3358| 类型 | 说明 | 3359| -- | -- | 3360| [Input_Result](#input_result) | OH_Input_UnregisterDeviceListener 的返回值。<br> [INPUT_SUCCESS](#input_result) 表示取消注册成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示listener 为 NULL 或者 listener 未被注册。<br> [INPUT_SERVICE_EXCEPTION](#input_result) 表示由于服务异常调用失败。 | 3361 3362### OH_Input_UnregisterDeviceListeners() 3363 3364``` 3365Input_Result OH_Input_UnregisterDeviceListeners() 3366``` 3367 3368**描述** 3369 3370取消注册所有的设备热插拔的监听。 3371 3372**系统能力:** SystemCapability.MultimodalInput.Input.Core 3373 3374**起始版本:** 13 3375 3376**返回:** 3377 3378| 类型 | 说明 | 3379| -- | -- | 3380| [Input_Result](#input_result) | OH_Input_UnregisterDeviceListener 的返回值。<br> [INPUT_SUCCESS](#input_result) 表示调用成功。<br> [INPUT_SERVICE_EXCEPTION](#input_result) 表示由于服务异常调用失败。 | 3381 3382### OH_Input_GetDeviceIds() 3383 3384``` 3385Input_Result OH_Input_GetDeviceIds(int32_t *deviceIds, int32_t inSize, int32_t *outSize) 3386``` 3387 3388**描述** 3389 3390获取所有输入设备的ID列表。 3391 3392**系统能力:** SystemCapability.MultimodalInput.Input.Core 3393 3394**起始版本:** 13 3395 3396 3397**参数:** 3398 3399| 参数项 | 描述 | 3400| -- | -- | 3401| int32_t *deviceIds | deviceIds 保存输入设备ID的列表。 | 3402| int32_t inSize | 保存输入设备ID列表的大小。 | 3403| int32_t *outSize | outSize 输出输入设备ID列表的长度,值小于等于inSize长度。 | 3404 3405**返回:** 3406 3407| 类型 | 说明 | 3408| -- | -- | 3409| [Input_Result](#input_result) | [INPUT_SUCCESS](#input_result) 表示操作成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示deviceIds或outSize为空指针或inSize小于0。 | 3410 3411### OH_Input_GetDevice() 3412 3413``` 3414Input_Result OH_Input_GetDevice(int32_t deviceId, Input_DeviceInfo **deviceInfo) 3415``` 3416 3417**描述** 3418 3419获取输入设备信息。 3420 3421**系统能力:** SystemCapability.MultimodalInput.Input.Core 3422 3423**起始版本:** 13 3424 3425 3426**参数:** 3427 3428| 参数项 | 描述 | 3429| -- | -- | 3430| int32_t deviceId | 设备ID。 | 3431| [Input_DeviceInfo](capi-input-input-deviceinfo.md) **deviceInfo | deviceInfo 指向输入设备信息[Input_DeviceInfo](capi-input-input-deviceinfo.md)的指针。 | 3432 3433**返回:** 3434 3435| 类型 | 说明 | 3436| -- | -- | 3437| [Input_Result](#input_result) | [INPUT_SUCCESS](#input_result) 表示操作成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示deviceInfo为空指针或deviceId无效。<br> 可以通过 [OH_Input_GetDeviceIds](#oh_input_getdeviceids) 表示接口查询系统支持的设备ID。 | 3438 3439### OH_Input_CreateDeviceInfo() 3440 3441``` 3442Input_DeviceInfo* OH_Input_CreateDeviceInfo(void) 3443``` 3444 3445**描述** 3446 3447创建输入设备信息的对象。 3448 3449**系统能力:** SystemCapability.MultimodalInput.Input.Core 3450 3451**起始版本:** 13 3452 3453**返回:** 3454 3455| 类型 | 说明 | 3456| -- | -- | 3457| Input_DeviceInfo* | 如果操作成功,返回设备信息[Input_DeviceInfo](capi-input-input-deviceinfo.md)实例的指针。否则返回空指针,可能的原因是分配内存失败。 | 3458 3459### OH_Input_DestroyDeviceInfo() 3460 3461``` 3462void OH_Input_DestroyDeviceInfo(Input_DeviceInfo **deviceInfo) 3463``` 3464 3465**描述** 3466 3467销毁输入设备信息的对象。 3468 3469**系统能力:** SystemCapability.MultimodalInput.Input.Core 3470 3471**起始版本:** 13 3472 3473 3474**参数:** 3475 3476| 参数项 | 描述 | 3477| -- | -- | 3478| [Input_DeviceInfo](capi-input-input-deviceinfo.md) **deviceInfo | deviceInfo 设备信息的对象。 | 3479 3480### OH_Input_GetKeyboardType() 3481 3482``` 3483Input_Result OH_Input_GetKeyboardType(int32_t deviceId, int32_t *keyboardType) 3484``` 3485 3486**描述** 3487 3488获取输入设备的键盘类型。 3489 3490**系统能力:** SystemCapability.MultimodalInput.Input.Core 3491 3492**起始版本:** 13 3493 3494 3495**参数:** 3496 3497| 参数项 | 描述 | 3498| -- | -- | 3499| int32_t deviceId | 设备ID。 | 3500| int32_t *keyboardType | keyboardType 指向输入设备的键盘指针。 | 3501 3502**返回:** 3503 3504| 类型 | 说明 | 3505| -- | -- | 3506| [Input_Result](#input_result) | [INPUT_SUCCESS](#input_result) 表示操作成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示设备ID为无效值或者keyboardType是空指针。 | 3507 3508### OH_Input_GetDeviceId() 3509 3510``` 3511Input_Result OH_Input_GetDeviceId(Input_DeviceInfo *deviceInfo, int32_t *id) 3512``` 3513 3514**描述** 3515 3516获取输入设备的id。 3517 3518**系统能力:** SystemCapability.MultimodalInput.Input.Core 3519 3520**起始版本:** 13 3521 3522 3523**参数:** 3524 3525| 参数项 | 描述 | 3526| -- | -- | 3527| [Input_DeviceInfo](capi-input-input-deviceinfo.md) *deviceInfo | deviceInfo 输入设备信息[Input_DeviceInfo](capi-input-input-deviceinfo.md)。 | 3528| int32_t *id | id 指向输入设备ID的指针。 | 3529 3530**返回:** 3531 3532| 类型 | 说明 | 3533| -- | -- | 3534| [Input_Result](#input_result) | [INPUT_SUCCESS](#input_result) 表示操作成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示deviceInfo或者id是空指针。 | 3535 3536### OH_Input_GetDeviceName() 3537 3538``` 3539Input_Result OH_Input_GetDeviceName(Input_DeviceInfo *deviceInfo, char **name) 3540``` 3541 3542**描述** 3543 3544获取输入设备的名称。 3545 3546**系统能力:** SystemCapability.MultimodalInput.Input.Core 3547 3548**起始版本:** 13 3549 3550 3551**参数:** 3552 3553| 参数项 | 描述 | 3554| -- | -- | 3555| [Input_DeviceInfo](capi-input-input-deviceinfo.md) *deviceInfo | deviceInfo 输入设备信息[Input_DeviceInfo](capi-input-input-deviceinfo.md)。 | 3556| char **name | name 指向输入设备名称的指针。 | 3557 3558**返回:** 3559 3560| 类型 | 说明 | 3561| -- | -- | 3562| [Input_Result](#input_result) | [INPUT_SUCCESS](#input_result) 表示操作成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示deviceInfo或者name是空指针。 | 3563 3564### OH_Input_GetCapabilities() 3565 3566``` 3567Input_Result OH_Input_GetCapabilities(Input_DeviceInfo *deviceInfo, int32_t *capabilities) 3568``` 3569 3570**描述** 3571 3572获取有关输入设备能力信息,比如设备是触摸屏、触控板、键盘等。 3573 3574**系统能力:** SystemCapability.MultimodalInput.Input.Core 3575 3576**起始版本:** 13 3577 3578 3579**参数:** 3580 3581| 参数项 | 描述 | 3582| -- | -- | 3583| [Input_DeviceInfo](capi-input-input-deviceinfo.md) *deviceInfo | deviceInfo 输入设备信息[Input_DeviceInfo](capi-input-input-deviceinfo.md)。 | 3584| int32_t *capabilities | capabilities 指向输入设备能力信息的指针。 | 3585 3586**返回:** 3587 3588| 类型 | 说明 | 3589| -- | -- | 3590| [Input_Result](#input_result) | [INPUT_SUCCESS](#input_result) 表示操作成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示deviceInfo或者capabilities是空指针。 | 3591 3592### OH_Input_GetDeviceVersion() 3593 3594``` 3595Input_Result OH_Input_GetDeviceVersion(Input_DeviceInfo *deviceInfo, int32_t *version) 3596``` 3597 3598**描述** 3599 3600获取输入设备的版本信息。 3601 3602**系统能力:** SystemCapability.MultimodalInput.Input.Core 3603 3604**起始版本:** 13 3605 3606 3607**参数:** 3608 3609| 参数项 | 描述 | 3610| -- | -- | 3611| [Input_DeviceInfo](capi-input-input-deviceinfo.md) *deviceInfo | deviceInfo 输入设备信息[Input_DeviceInfo](capi-input-input-deviceinfo.md)。 | 3612| int32_t *version | version 指向输入设备版本信息的指针。 | 3613 3614**返回:** 3615 3616| 类型 | 说明 | 3617| -- | -- | 3618| [Input_Result](#input_result) | [INPUT_SUCCESS](#input_result) 表示操作成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示deviceInfo或者version是空指针。 | 3619 3620### OH_Input_GetDeviceProduct() 3621 3622``` 3623Input_Result OH_Input_GetDeviceProduct(Input_DeviceInfo *deviceInfo, int32_t *product) 3624``` 3625 3626**描述** 3627 3628获取输入设备的产品信息。 3629 3630**系统能力:** SystemCapability.MultimodalInput.Input.Core 3631 3632**起始版本:** 13 3633 3634 3635**参数:** 3636 3637| 参数项 | 描述 | 3638| -- | -- | 3639| [Input_DeviceInfo](capi-input-input-deviceinfo.md) *deviceInfo | deviceInfo 输入设备信息[Input_DeviceInfo](capi-input-input-deviceinfo.md)。 | 3640| int32_t *product | product 指向输入设备产品信息的指针。 | 3641 3642**返回:** 3643 3644| 类型 | 说明 | 3645| -- | -- | 3646| [Input_Result](#input_result) | [INPUT_SUCCESS](#input_result) 表示操作成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示deviceInfo或者product是空指针。 | 3647 3648### OH_Input_GetDeviceVendor() 3649 3650``` 3651Input_Result OH_Input_GetDeviceVendor(Input_DeviceInfo *deviceInfo, int32_t *vendor) 3652``` 3653 3654**描述** 3655 3656获取输入设备的厂商信息。 3657 3658**系统能力:** SystemCapability.MultimodalInput.Input.Core 3659 3660**起始版本:** 13 3661 3662 3663**参数:** 3664 3665| 参数项 | 描述 | 3666| -- | -- | 3667| [Input_DeviceInfo](capi-input-input-deviceinfo.md) *deviceInfo | deviceInfo 输入设备信息[Input_DeviceInfo](capi-input-input-deviceinfo.md)。 | 3668| int32_t *vendor | vendor 指向输入设备厂商信息的指针。 | 3669 3670**返回:** 3671 3672| 类型 | 说明 | 3673| -- | -- | 3674| [Input_Result](#input_result) | [INPUT_SUCCESS](#input_result) 表示操作成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示deviceInfo或者vendor是空指针。 | 3675 3676### OH_Input_GetDeviceAddress() 3677 3678``` 3679Input_Result OH_Input_GetDeviceAddress(Input_DeviceInfo *deviceInfo, char **address) 3680``` 3681 3682**描述** 3683 3684获取输入设备的物理地址。 3685 3686**系统能力:** SystemCapability.MultimodalInput.Input.Core 3687 3688**起始版本:** 13 3689 3690 3691**参数:** 3692 3693| 参数项 | 描述 | 3694| -- | -- | 3695| [Input_DeviceInfo](capi-input-input-deviceinfo.md) *deviceInfo | deviceInfo 输入设备信息[Input_DeviceInfo](capi-input-input-deviceinfo.md)。 | 3696| char **address | address 指向输入设备物理地址的指针。 | 3697 3698**返回:** 3699 3700| 类型 | 说明 | 3701| -- | -- | 3702| [Input_Result](#input_result) | [INPUT_SUCCESS](#input_result) 表示操作成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示deviceInfo或者address是空指针。 | 3703 3704### OH_Input_GetFunctionKeyState() 3705 3706``` 3707Input_Result OH_Input_GetFunctionKeyState(int32_t keyCode, int32_t *state) 3708``` 3709 3710**描述** 3711 3712获取功能键状态。 3713 3714**起始版本:** 15 3715 3716 3717**参数:** 3718 3719| 参数项 | 描述 | 3720| -- | -- | 3721| int32_t keyCode | 功能键值。支持的功能键包含CapsLock键。 | 3722| int32_t *state | state 功能键状态。0表示功能键关闭,1表示功能键打开。 | 3723 3724**返回:** 3725 3726| 类型 | 说明 | 3727| -- | -- | 3728| [Input_Result](#input_result) | OH_Input_GetFunctionKeyState的执行结果。<br> [INPUT_SUCCESS](#input_result) 表示获取状态成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示参数错误。<br> {@link INPUT_DEVICE_NOT_EXIST } 表示键盘设备不存在。 | 3729 3730### OH_Input_InjectTouchEvent() 3731 3732``` 3733int32_t OH_Input_InjectTouchEvent(const struct Input_TouchEvent* touchEvent) 3734``` 3735 3736**描述** 3737 3738使用以指定屏幕左上角为原点的相对坐标系的坐标注入触屏事件。 3739 3740如果当前处于用户未授权状态,调用该接口注入事件不生效。 3741 3742从API version 20开始,建议先使用[OH_Input_RequestInjection](#oh_input_requestinjection)请求授权。然后通过[OH_Input_QueryAuthorizedStatus](#oh_input_queryauthorizedstatus)查询授权状态,当授权状态为[AUTHORIZED](capi-oh-input-manager-h.md#input_injectionstatus)时,再使用该接口。 3743 3744**起始版本:** 12 3745 3746 3747**参数:** 3748 3749| 参数项 | 描述 | 3750| -- | -- | 3751| const struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 3752 3753**返回:** 3754 3755| 类型 | 说明 | 3756| -- | -- | 3757| int32_t | OH_Input_InjectTouchEvent的执行结果。<br> [INPUT_SUCCESS](#input_result) 表示注入成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示参数错误。<br> [INPUT_PERMISSION_DENIED](#input_result) 表示缺少权限。 | 3758 3759### OH_Input_InjectMouseEvent() 3760 3761``` 3762int32_t OH_Input_InjectMouseEvent(const struct Input_MouseEvent* mouseEvent) 3763``` 3764 3765**描述** 3766 3767使用以指定屏幕左上角为原点的相对坐标系的坐标注入鼠标事件。 3768 3769如果当前处于用户未授权状态,调用该接口注入事件不生效。 3770 3771从API version 20开始,建议先使用[OH_Input_RequestInjection](#oh_input_requestinjection)请求授权。然后通过[OH_Input_QueryAuthorizedStatus](#oh_input_queryauthorizedstatus)查询授权状态,当授权状态为[AUTHORIZED](capi-oh-input-manager-h.md#input_injectionstatus)时,再使用该接口。 3772 3773**系统能力:** SystemCapability.MultimodalInput.Input.Core 3774 3775**起始版本:** 12 3776 3777 3778**参数:** 3779 3780| 参数项 | 描述 | 3781| -- | -- | 3782| const struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 3783 3784**返回:** 3785 3786| 类型 | 说明 | 3787| -- | -- | 3788| int32_t | OH_Input_InjectTouchEvent的执行结果。<br> [INPUT_SUCCESS](#input_result) 表示注入成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示参数错误。<br> [INPUT_PERMISSION_DENIED](#input_result) 表示缺少权限。 | 3789 3790### OH_Input_GetMouseEventDisplayId() 3791 3792``` 3793int32_t OH_Input_GetMouseEventDisplayId(const struct Input_MouseEvent* mouseEvent) 3794``` 3795 3796**描述** 3797 3798获取鼠标事件的屏幕Id。 3799 3800**系统能力:** SystemCapability.MultimodalInput.Input.Core 3801 3802**起始版本:** 15 3803 3804 3805**参数:** 3806 3807| 参数项 | 描述 | 3808| -- | -- | 3809| const struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 3810 3811**返回:** 3812 3813| 类型 | 说明 | 3814| -- | -- | 3815| int32_t | 若获取鼠标事件的屏幕Id成功,则返回鼠标事件的屏幕Id;若mouseEvent为NULL,则返回-1。 | 3816 3817### OH_Input_QueryMaxTouchPoints() 3818 3819``` 3820Input_Result OH_Input_QueryMaxTouchPoints(int32_t *count) 3821``` 3822 3823**描述** 3824 3825查询设备支持的最大触屏报点数。 3826 3827**起始版本:** 20 3828 3829**参数:** 3830 3831| 参数项 | 描述 | 3832| -- | -- | 3833| int32_t *count | 设备支持的最大触屏报点数,count取值范围为0-10,-1表示未知数量。 | 3834 3835**返回:** 3836 3837| 类型 | 说明 | 3838| -- | -- | 3839| [Input_Result](capi-oh-input-manager-h.md#input_result) | OH_Input_QueryMaxTouchPoints的执行结果:<br>[INPUT_SUCCESS](#input_result) 表示查询成功。<br> [INPUT_PARAMETER_ERROR](capi-oh-input-manager-h.md#input_result) 表示参数错误。 | 3840 3841### OH_Input_InjectMouseEventGlobal() 3842``` 3843int32_t OH_Input_InjectMouseEventGlobal(const struct Input_MouseEvent* mouseEvent) 3844``` 3845 3846**描述** 3847 3848使用以主屏左上角为原点的全局坐标系的坐标注入鼠标事件。 3849 3850如果当前处于用户未授权状态,调用该接口注入事件不生效。 3851 3852建议先使用[OH_Input_RequestInjection](#oh_input_requestinjection)请求授权。然后通过[OH_Input_QueryAuthorizedStatus](#oh_input_queryauthorizedstatus)查询授权状态,当授权状态为[AUTHORIZED](capi-oh-input-manager-h.md#input_injectionstatus)时,再使用该接口。 3853 3854**起始版本:** 20 3855 3856**参数:** 3857 3858| 参数项 | 描述 | 3859| -- | -- | 3860| const struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 3861 3862**返回:** 3863 3864| 类型 | 说明 | 3865| -- | -- | 3866| int32_t | OH_Input_InjectMouseEventGlobal的执行结果。<br> [INPUT_SUCCESS](#input_result) 表示注入成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示参数错误。<br> [INPUT_PERMISSION_DENIED](#input_result) 表示缺少权限。 | 3867 3868### OH_Input_SetMouseEventGlobalX() 3869``` 3870void OH_Input_SetMouseEventGlobalX(struct Input_MouseEvent* mouseEvent, int32_t globalX) 3871``` 3872 3873**描述** 3874 3875设置鼠标事件以主屏左上角为原点的全局坐标系的X坐标。 3876 3877**起始版本:** 20 3878 3879**参数:** 3880 3881| 参数项 | 描述 | 3882| -- | -- | 3883| const struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 3884| int32_t globalX | 鼠标事件以主屏左上角为原点的全局坐标系的X坐标。 | 3885 3886### OH_Input_GetMouseEventGlobalX() 3887 3888``` 3889int32_t OH_Input_GetMouseEventGlobalX(const struct Input_MouseEvent* mouseEvent) 3890``` 3891 3892**描述** 3893 3894获取鼠标事件以主屏左上角为原点的全局坐标系的X坐标。 3895 3896**起始版本:** 20 3897 3898**参数:** 3899 3900| 参数项 | 描述 | 3901| -- | -- | 3902| const struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 3903 3904**返回:** 3905 3906| 类型 | 说明 | 3907| -- | -- | 3908| int32_t | 鼠标事件以主屏左上角为原点的全局坐标系的X坐标。 | 3909 3910### OH_Input_SetMouseEventGlobalY() 3911 3912``` 3913void OH_Input_SetMouseEventGlobalY(struct Input_MouseEvent* mouseEvent, int32_t globalY) 3914``` 3915 3916**描述** 3917 3918设置鼠标事件以主屏左上角为原点的全局坐标系的Y坐标。 3919 3920**起始版本:** 20 3921 3922**参数:** 3923 3924| 参数项 | 描述 | 3925| -- | -- | 3926| const struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 3927| int32_t globalY | 鼠标事件以主屏左上角为原点的全局坐标系的Y坐标。 | 3928 3929### OH_Input_GetMouseEventGlobalY() 3930 3931``` 3932int32_t OH_Input_GetMouseEventGlobalY(const struct Input_MouseEvent* mouseEvent) 3933``` 3934 3935**描述** 3936 3937获取鼠标事件以主屏左上角为原点的全局坐标系的Y坐标。 3938 3939**起始版本:** 20 3940 3941**参数:** 3942 3943| 参数项 | 描述 | 3944| -- | -- | 3945| const struct [Input_MouseEvent](capi-input-input-mouseevent.md)* mouseEvent | 鼠标事件对象,通过[OH_Input_CreateMouseEvent](#oh_input_createmouseevent)接口可以创建鼠标事件对象。<br>使用完需使用[OH_Input_DestroyMouseEvent](#oh_input_destroymouseevent)接口销毁鼠标事件对象。 | 3946 3947**返回:** 3948 3949| 类型 | 说明 | 3950| -- | -- | 3951| int32_t | 鼠标事件以主屏左上角为原点的全局坐标系的Y坐标。 | 3952 3953### OH_Input_InjectTouchEventGlobal() 3954 3955``` 3956int32_t OH_Input_InjectTouchEventGlobal(const struct Input_TouchEvent* touchEvent) 3957``` 3958 3959**描述** 3960 3961使用以主屏左上角为原点的全局坐标系的坐标注入触屏事件。 3962 3963如果当前处于用户未授权状态,调用该接口注入事件不生效。 3964 3965建议先使用[OH_Input_RequestInjection](#oh_input_requestinjection)请求授权。然后通过[OH_Input_QueryAuthorizedStatus](#oh_input_queryauthorizedstatus)查询授权状态,当授权状态为[AUTHORIZED](capi-oh-input-manager-h.md#input_injectionstatus)时,再使用该接口。 3966 3967**起始版本:** 20 3968 3969**参数:** 3970 3971| 参数项 | 描述 | 3972| -- | -- | 3973| const struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 3974 3975**返回:** 3976 3977| 类型 | 说明 | 3978| -- | -- | 3979| int32_t | OH_Input_InjectTouchEventGlobal的执行结果。<br> [INPUT_SUCCESS](#input_result) 表示注入成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示参数错误。<br> [INPUT_PERMISSION_DENIED](#input_result) 表示缺少权限。 | 3980 3981### OH_Input_SetTouchEventGlobalX() 3982 3983``` 3984void OH_Input_SetTouchEventGlobalX(struct Input_TouchEvent* touchEvent, int32_t globalX) 3985``` 3986 3987**描述** 3988 3989设置触屏事件以主屏左上角为原点的全局坐标系的X坐标。 3990 3991**起始版本:** 20 3992 3993**参数:** 3994 3995| 参数项 | 描述 | 3996| -- | -- | 3997| const struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 3998| int32_t globalX | 触屏事件以主屏左上角为原点的全局坐标系的X坐标。 | 3999 4000### OH_Input_GetTouchEventGlobalX() 4001 4002``` 4003int32_t OH_Input_GetTouchEventGlobalX(const struct Input_TouchEvent* touchEvent) 4004``` 4005 4006**描述** 4007 4008获取触屏事件以主屏左上角为原点的全局坐标系的X坐标。 4009 4010**起始版本:** 20 4011 4012**参数:** 4013 4014| 参数项 | 描述 | 4015| -- | -- | 4016| const struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 4017 4018**返回:** 4019 4020| 类型 | 说明 | 4021| -- | -- | 4022| int32_t | 触屏事件以主屏左上角为原点的全局坐标系的X坐标。 | 4023 4024### OH_Input_SetTouchEventGlobalY() 4025 4026``` 4027void OH_Input_SetTouchEventGlobalY(struct Input_TouchEvent* touchEvent, int32_t globalY) 4028``` 4029 4030**描述** 4031 4032设置触屏事件以主屏左上角为原点的全局坐标系的Y坐标。 4033 4034**起始版本:** 20 4035 4036**参数:** 4037 4038| 参数项 | 描述 | 4039| -- | -- | 4040| const struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 4041| int32_t globalY | 触屏事件以主屏左上角为原点的全局坐标系的Y坐标。 | 4042 4043### OH_Input_GetTouchEventGlobalY() 4044 4045``` 4046int32_t OH_Input_GetTouchEventGlobalY(const struct Input_TouchEvent* touchEvent) 4047``` 4048 4049**描述** 4050 4051获取触屏事件以主屏左上角为原点的全局坐标系的Y坐标。 4052 4053**起始版本:** 20 4054 4055**参数:** 4056 4057| 参数项 | 描述 | 4058| -- | -- | 4059| const struct [Input_TouchEvent](capi-input-input-touchevent.md)* touchEvent | 触屏事件对象,通过[OH_Input_CreateTouchEvent](#oh_input_createtouchevent)接口可以创建触屏事件对象。<br>使用完需使用[OH_Input_DestroyTouchEvent](#oh_input_destroytouchevent)接口销毁触屏事件对象。 | 4060 4061**返回:** 4062 4063| 类型 | 说明 | 4064| -- | -- | 4065| int32_t | 触屏事件以主屏左上角为原点的全局坐标系的Y坐标。 | 4066 4067### OH_Input_SetAxisEventGlobalX() 4068 4069``` 4070Input_Result OH_Input_SetAxisEventGlobalX(struct Input_AxisEvent* axisEvent, int32_t globalX) 4071``` 4072 4073**描述** 4074 4075设置轴事件以主屏左上角为原点的全局坐标系的X坐标。 4076 4077**起始版本:** 20 4078 4079**参数:** 4080 4081| 参数项 | 描述 | 4082| -- | -- | 4083| const [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 4084| int32_t globalX | 轴事件以主屏左上角为原点的全局坐标系的X坐标。 | 4085 4086**返回:** 4087 4088| 类型 | 说明 | 4089| -- | -- | 4090| [Input_Result](#input_result) | [INPUT_SUCCESS](#input_result) 表示操作成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示axisEvent是空指针。 | 4091 4092### OH_Input_GetAxisEventGlobalX() 4093 4094``` 4095Input_Result OH_Input_GetAxisEventGlobalX(const Input_AxisEvent* axisEvent, int32_t* globalX) 4096``` 4097 4098**描述** 4099 4100获取轴事件以主屏左上角为原点的全局坐标系的X坐标。 4101 4102**起始版本:** 20 4103 4104**参数:** 4105 4106| 参数项 | 描述 | 4107| -- | -- | 4108| const [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 4109| int32_t* globalX | 轴事件以主屏左上角为原点的全局坐标系的X坐标。 | 4110 4111**返回:** 4112 4113| 类型 | 说明 | 4114| -- | -- | 4115| [Input_Result](#input_result) | [INPUT_SUCCESS](#input_result) 表示操作成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示axisEvent或者globalX是空指针。 | 4116 4117### OH_Input_SetAxisEventGlobalY() 4118 4119``` 4120Input_Result OH_Input_SetAxisEventGlobalY(struct Input_AxisEvent* axisEvent, int32_t globalY) 4121``` 4122 4123**描述** 4124 4125设置轴事件以主屏左上角为原点的全局坐标系的Y坐标。 4126 4127**起始版本:** 20 4128 4129**参数:** 4130 4131| 参数项 | 描述 | 4132| -- | -- | 4133| const [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 4134| int32_t globalY | 轴事件以主屏左上角为原点的全局坐标系的Y坐标。 | 4135 4136**返回:** 4137 4138| 类型 | 说明 | 4139| -- | -- | 4140| [Input_Result](#input_result) | [INPUT_SUCCESS](#input_result) 表示操作成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示axisEvent是空指针。 | 4141 4142### OH_Input_GetAxisEventGlobalY() 4143 4144``` 4145Input_Result OH_Input_GetAxisEventGlobalY(const Input_AxisEvent* axisEvent, int32_t* globalY) 4146``` 4147 4148**描述** 4149 4150获取轴事件以主屏左上角为原点的全局坐标系的Y坐标。 4151 4152**起始版本:** 20 4153 4154**参数:** 4155 4156| 参数项 | 描述 | 4157| -- | -- | 4158| const [Input_AxisEvent](capi-input-input-axisevent.md)* axisEvent | 轴事件对象,通过[OH_Input_CreateAxisEvent](#oh_input_createaxisevent)接口可以创建轴事件对象。<br>使用完需使用[OH_Input_DestroyAxisEvent](#oh_input_destroyaxisevent)接口销毁轴事件对象。 | 4159| int32_t* globalY | 轴事件以主屏左上角为原点的全局坐标系的Y坐标。 | 4160 4161**返回:** 4162 4163| 类型 | 说明 | 4164| -- | -- | 4165| [Input_Result](#input_result) | [INPUT_SUCCESS](#input_result) 表示操作成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示axisEvent或者globalY是空指针。 | 4166 4167### OH_Input_GetPointerLocation() 4168 4169``` 4170Input_Result OH_Input_GetPointerLocation(int32_t *displayId, double *displayX, double *displayY) 4171``` 4172 4173**描述** 4174 4175获取当前屏幕上鼠标的坐标点。 4176 4177**起始版本:** 20 4178 4179**参数:** 4180 4181| 参数项 | 描述 | 4182| -- | -- | 4183| int32_t *displayId | 当前屏幕的屏幕Id。 | 4184| double *displayX | 鼠标在当前屏幕的X坐标。 | 4185| double *displayY | 鼠标在当前屏幕的Y坐标。 | 4186 4187**返回:** 4188 4189| 类型 | 说明 | 4190| -- | -- | 4191| [Input_Result](#input_result) | OH_Input_GetPointerLocation的执行结果:<br> [INPUT_SUCCESS](#input_result) 表示查询成功。<br> [INPUT_PARAMETER_ERROR](#input_result) 表示参数错误。<br> [INPUT_SERVICE_EXCEPTION](#input_result) 表示服务异常。<br> [INPUT_APP_NOT_FOCUSED](#input_result) 表示当前应用不是焦点应用。<br> [INPUT_DEVICE_NO_POINTER](#input_result) 表示无鼠标类输入外设。 |