1# Native XComponent 2 3 4## 概述 5 6描述ArkUI XComponent持有的surface和触摸事件,该事件可用于EGL/OpenGLES和媒体数据输入,并显示在ArkUI XComponent上,具体使用请参考[Native XComponent](../../ui/napi-xcomponent-guidelines.md)。 7 8> **说明:** 9> 10> 该模块从API Version 8 开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 11 12## 汇总 13 14 15### 文件 16 17| 名称 | 描述 | 18| ---------------------------------------- | ---------------------------------------- | 19| [native_interface_xcomponent.h](native__interface__xcomponent_8h.md) | 声明用于访问Native XComponent的API。 | 20| [native_xcomponent_key_event.h](native__xcomponent__key__event_8h.md) | 声明用于访问Native XComponent键盘事件所使用到的枚举类型。 | 21 22 23### 结构体 24 25| 名称 | 描述 | 26| ---------------------------------------- | --------------------- | 27| [OH_NativeXComponent_TouchPoint](_o_h___native_x_component___touch_point.md) | 触摸事件中触摸点的信息。 | 28| [OH_NativeXComponent_TouchEvent](_o_h___native_x_component___touch_event.md) | 触摸事件。 | 29| [OH_NativeXComponent_MouseEvent](_o_h___native_x_component___mouse_event.md) | 鼠标事件。 | 30| [OH_NativeXComponent_Callback](_o_h___native_x_component___callback.md) | 注册surface生命周期和触摸事件回调。 | 31| [OH_NativeXComponent_MouseEvent_Callback](_o_h___native_x_component___mouse_event___callback.md) | 注册鼠标事件的回调。 | 32| [OH_NativeXComponent_ExpectedRateRange](_o_h___native_x_component___expected_rate_range.md) | 定义期望帧率范围。 | 33 34 35### 类型定义 36 37| 名称 | 描述 | 38| ---------------------------------------- | ------------------------------------ | 39| [OH_NativeXComponent](#oh_nativexcomponent) | 提供封装的OH_NativeXComponent实例。 | 40| [OH_NativeXComponent_Callback](#oh_nativexcomponent_callback) | 注册surface生命周期和触摸事件回调。 | 41| [OH_NativeXComponent_MouseEvent_Callback](#oh_nativexcomponent_mouseevent_callback) | 注册鼠标事件的回调。 | 42| [OH_NativeXComponent_KeyEvent](#oh_nativexcomponent_keyevent) | 提供封装的OH_NativeXComponent_KeyEvent实例。 | 43 44 45### 枚举 46 47| 名称 | 描述 | 48| ---------------------------------------- | ---------- | 49| { OH_NATIVEXCOMPONENT_RESULT_SUCCESS = 0, OH_NATIVEXCOMPONENT_RESULT_FAILED = -1, OH_NATIVEXCOMPONENT_RESULT_BAD_PARAMETER = -2 } | 枚举API访问状态。 | 50| [OH_NativeXComponent_TouchEventType](#oh_nativexcomponent_toucheventtype) {<br/>OH_NATIVEXCOMPONENT_DOWN = 0, OH_NATIVEXCOMPONENT_UP, OH_NATIVEXCOMPONENT_MOVE, OH_NATIVEXCOMPONENT_CANCEL,<br/>OH_NATIVEXCOMPONENT_UNKNOWN<br/>} | 触摸事件类型。 | 51| [OH_NativeXComponent_TouchPointToolType](#oh_nativexcomponent_touchpointtooltype) {<br/>OH_NATIVEXCOMPONENT_TOOL_TYPE_UNKNOWN = 0, OH_NATIVEXCOMPONENT_TOOL_TYPE_FINGER, OH_NATIVEXCOMPONENT_TOOL_TYPE_PEN, OH_NATIVEXCOMPONENT_TOOL_TYPE_RUBBER,<br/>OH_NATIVEXCOMPONENT_TOOL_TYPE_BRUSH, OH_NATIVEXCOMPONENT_TOOL_TYPE_PENCIL, OH_NATIVEXCOMPONENT_TOOL_TYPE_AIRBRUSH, OH_NATIVEXCOMPONENT_TOOL_TYPE_MOUSE,<br/>OH_NATIVEXCOMPONENT_TOOL_TYPE_LENS<br/>} | 触摸点工具类型。 | 52| [OH_NativeXComponent_EventSourceType](#oh_nativexcomponent_eventsourcetype) {<br/>OH_NATIVEXCOMPONENT_SOURCE_TYPE_UNKNOWN = 0, OH_NATIVEXCOMPONENT_SOURCE_TYPE_MOUSE, OH_NATIVEXCOMPONENT_SOURCE_TYPE_TOUCHSCREEN, OH_NATIVEXCOMPONENT_SOURCE_TYPE_TOUCHPAD,<br/>OH_NATIVEXCOMPONENT_SOURCE_TYPE_JOYSTICK, OH_NATIVEXCOMPONENT_SOURCE_TYPE_KEYBOARD<br/>} | 触摸事件源类型。 | 53| [OH_NativeXComponent_MouseEventAction](#oh_nativexcomponent_mouseeventaction) { OH_NATIVEXCOMPONENT_MOUSE_NONE = 0, OH_NATIVEXCOMPONENT_MOUSE_PRESS, OH_NATIVEXCOMPONENT_MOUSE_RELEASE, OH_NATIVEXCOMPONENT_MOUSE_MOVE OH_NATIVEXCOMPONENT_MOUSE_CANCEL } | 鼠标事件动作。 | 54| [OH_NativeXComponent_MouseEventButton](#oh_nativexcomponent_mouseeventbutton) {<br/>OH_NATIVEXCOMPONENT_NONE_BUTTON = 0, OH_NATIVEXCOMPONENT_LEFT_BUTTON = 0x01, OH_NATIVEXCOMPONENT_RIGHT_BUTTON = 0x02, OH_NATIVEXCOMPONENT_MIDDLE_BUTTON = 0x04,<br/>OH_NATIVEXCOMPONENT_BACK_BUTTON = 0x08, OH_NATIVEXCOMPONENT_FORWARD_BUTTON = 0x10<br/>} | 鼠标事件按键。 | 55| [OH_NativeXComponent_KeyCode](#oh_nativexcomponent_keycode) {<br/>KEY_UNKNOWN = -1, KEY_FN = 0, KEY_HOME = 1, KEY_BACK = 2,KEY_MEDIA_PLAY_PAUSE = 10, KEY_MEDIA_STOP = 11, KEY_MEDIA_NEXT = 12, KEY_MEDIA_PREVIOUS = 13,<br/>KEY_MEDIA_REWIND = 14, KEY_MEDIA_FAST_FORWARD = 15, KEY_VOLUME_UP = 16, KEY_VOLUME_DOWN = 17,<br/>KEY_POWER = 18, KEY_CAMERA = 19, KEY_VOLUME_MUTE = 22, KEY_MUTE = 23,KEY_BRIGHTNESS_UP = 40, KEY_BRIGHTNESS_DOWN = 41, KEY_0 = 2000, KEY_1 = 2001,<br/>KEY_2 = 2002, KEY_3 = 2003, KEY_4 = 2004, KEY_5 = 2005,<br/>KEY_6 = 2006, KEY_7 = 2007, KEY_8 = 2008, KEY_9 = 2009,<br/>KEY_STAR = 2010, KEY_POUND = 2011, KEY_DPAD_UP = 2012, KEY_DPAD_DOWN = 2013,KEY_DPAD_LEFT = 2014, KEY_DPAD_RIGHT = 2015, KEY_DPAD_CENTER = 2016,<br/>KEY_A = 2017,<br/>KEY_B = 2018, KEY_C = 2019, KEY_D = 2020, KEY_E = 2021,<br/>KEY_F = 2022, KEY_G = 2023, KEY_H = 2024, KEY_I = 2025,<br/>KEY_J = 2026, KEY_K = 2027, KEY_L = 2028, KEY_M = 2029,<br/>KEY_N = 2030, KEY_O = 2031, KEY_P = 2032, KEY_Q = 2033,<br/>KEY_R = 2034, KEY_S = 2035, KEY_T = 2036, KEY_U = 2037,<br/>KEY_V = 2038, KEY_W = 2039, KEY_X = 2040, KEY_Y = 2041,<br/>KEY_Z = 2042, KEY_COMMA = 2043, KEY_PERIOD = 2044, KEY_ALT_LEFT = 2045,<br/>KEY_ALT_RIGHT = 2046, KEY_SHIFT_LEFT = 2047, KEY_SHIFT_RIGHT = 2048, KEY_TAB = 2049,<br/>KEY_SPACE = 2050, KEY_SYM = 2051, KEY_EXPLORER = 2052, KEY_ENVELOPE = 2053,<br/>KEY_ENTER = 2054, KEY_DEL = 2055, KEY_GRAVE = 2056, KEY_MINUS = 2057,<br/>KEY_EQUALS = 2058, KEY_LEFT_BRACKET = 2059, KEY_RIGHT_BRACKET = 2060, KEY_BACKSLASH = 2061,<br/>KEY_SEMICOLON = 2062, KEY_APOSTROPHE = 2063, KEY_SLASH = 2064, KEY_AT = 2065,<br/>KEY_PLUS = 2066, KEY_MENU = 2067, KEY_PAGE_UP = 2068, KEY_PAGE_DOWN = 2069,<br/>KEY_ESCAPE = 2070, KEY_FORWARD_DEL = 2071, KEY_CTRL_LEFT = 2072, KEY_CTRL_RIGHT = 2073,<br/>KEY_CAPS_LOCK = 2074, KEY_SCROLL_LOCK = 2075, KEY_META_LEFT = 2076, KEY_META_RIGHT = 2077,<br/>KEY_FUNCTION = 2078, KEY_SYSRQ = 2079, KEY_BREAK = 2080, KEY_MOVE_HOME = 2081,<br/>KEY_MOVE_END = 2082, KEY_INSERT = 2083, KEY_FORWARD = 2084, KEY_MEDIA_PLAY = 2085,<br/>KEY_MEDIA_PAUSE = 2086, KEY_MEDIA_CLOSE = 2087, KEY_MEDIA_EJECT = 2088, KEY_MEDIA_RECORD = 2089,<br/>KEY_F1 = 2090, KEY_F2 = 2091, KEY_F3 = 2092, KEY_F4 = 2093,<br/>KEY_F5 = 2094, KEY_F6 = 2095, KEY_F7 = 2096, KEY_F8 = 2097,<br/>KEY_F9 = 2098, KEY_F10 = 2099, KEY_F11 = 2100, KEY_F12 = 2101,<br/>KEY_NUM_LOCK = 2102, KEY_NUMPAD_0 = 2103, KEY_NUMPAD_1 = 2104, KEY_NUMPAD_2 = 2105,<br/>KEY_NUMPAD_3 = 2106, KEY_NUMPAD_4 = 2107, KEY_NUMPAD_5 = 2108, KEY_NUMPAD_6 = 2109,<br/>KEY_NUMPAD_7 = 2110, KEY_NUMPAD_8 = 2111, KEY_NUMPAD_9 = 2112, KEY_NUMPAD_DIVIDE = 2113,<br/>KEY_NUMPAD_MULTIPLY = 2114, KEY_NUMPAD_SUBTRACT = 2115, KEY_NUMPAD_ADD = 2116, KEY_NUMPAD_DOT = 2117,<br/>KEY_NUMPAD_COMMA = 2118, KEY_NUMPAD_ENTER = 2119, KEY_NUMPAD_EQUALS = 2120, KEY_NUMPAD_LEFT_PAREN = 2121,<br/>KEY_NUMPAD_RIGHT_PAREN = 2122, KEY_VIRTUAL_MULTITASK = 2210, KEY_SLEEP = 2600, KEY_ZENKAKU_HANKAKU = 2601,<br/>KEY_102ND = 2602, KEY_RO = 2603, KEY_KATAKANA = 2604, KEY_HIRAGANA = 2605,<br/>KEY_HENKAN = 2606, KEY_KATAKANA_HIRAGANA = 2607, KEY_MUHENKAN = 2608, KEY_LINEFEED = 2609,<br/>KEY_MACRO = 2610, KEY_NUMPAD_PLUSMINUS = 2611, KEY_SCALE = 2612, KEY_HANGUEL = 2613,<br/>KEY_HANJA = 2614, KEY_YEN = 2615, KEY_STOP = 2616, KEY_AGAIN = 2617,<br/>KEY_PROPS = 2618, KEY_UNDO = 2619, KEY_COPY = 2620, KEY_OPEN = 2621,<br/>KEY_PASTE = 2622, KEY_FIND = 2623, KEY_CUT = 2624, KEY_HELP = 2625,<br/>KEY_CALC = 2626, KEY_FILE = 2627, KEY_BOOKMARKS = 2628, KEY_NEXT = 2629,<br/>KEY_PLAYPAUSE = 2630, KEY_PREVIOUS = 2631, KEY_STOPCD = 2632, KEY_CONFIG = 2634,<br/>KEY_REFRESH = 2635, KEY_EXIT = 2636, KEY_EDIT = 2637, KEY_SCROLLUP = 2638,<br/>KEY_SCROLLDOWN = 2639, KEY_NEW = 2640, KEY_REDO = 2641, KEY_CLOSE = 2642,<br/>KEY_PLAY = 2643, KEY_BASSBOOST = 2644, KEY_PRINT = 2645, KEY_CHAT = 2646,<br/>KEY_FINANCE = 2647, KEY_CANCEL = 2648, KEY_KBDILLUM_TOGGLE = 2649, KEY_KBDILLUM_DOWN = 2650,<br/>KEY_KBDILLUM_UP = 2651, KEY_SEND = 2652, KEY_REPLY = 2653, KEY_FORWARDMAIL = 2654,<br/>KEY_SAVE = 2655, KEY_DOCUMENTS = 2656, KEY_VIDEO_NEXT = 2657, KEY_VIDEO_PREV = 2658,<br/>KEY_BRIGHTNESS_CYCLE = 2659, KEY_BRIGHTNESS_ZERO = 2660, KEY_DISPLAY_OFF = 2661, KEY_BTN_MISC = 2662,<br/>KEY_GOTO = 2663, KEY_INFO = 2664, KEY_PROGRAM = 2665, KEY_PVR = 2666,<br/>KEY_SUBTITLE = 2667, KEY_FULL_SCREEN = 2668, KEY_KEYBOARD = 2669, KEY_ASPECT_RATIO = 2670,<br/>KEY_PC = 2671, KEY_TV = 2672, KEY_TV2 = 2673, KEY_VCR = 2674,<br/>KEY_VCR2 = 2675, KEY_SAT = 2676, KEY_CD = 2677, KEY_TAPE = 2678,<br/>KEY_TUNER = 2679, KEY_PLAYER = 2680, KEY_DVD = 2681, KEY_AUDIO = 2682,<br/>KEY_VIDEO = 2683, KEY_MEMO = 2684, KEY_CALENDAR = 2685, KEY_RED = 2686,<br/>KEY_GREEN = 2687, KEY_YELLOW = 2688, KEY_BLUE = 2689, KEY_CHANNELUP = 2690,<br/>KEY_CHANNELDOWN = 2691, KEY_LAST = 2692, KEY_RESTART = 2693, KEY_SLOW = 2694,<br/>KEY_SHUFFLE = 2695, KEY_VIDEOPHONE = 2696, KEY_GAMES = 2697, KEY_ZOOMIN = 2698,<br/>KEY_ZOOMOUT = 2699, KEY_ZOOMRESET = 2700, KEY_WORDPROCESSOR = 2701, KEY_EDITOR = 2702,<br/>KEY_SPREADSHEET = 2703, KEY_GRAPHICSEDITOR = 2704, KEY_PRESENTATION = 2705, KEY_DATABASE = 2706,<br/>KEY_NEWS = 2707, KEY_VOICEMAIL = 2708, KEY_ADDRESSBOOK = 2709, KEY_MESSENGER = 2710,<br/>KEY_BRIGHTNESS_TOGGLE = 2711, KEY_SPELLCHECK = 2712, KEY_COFFEE = 2713, KEY_MEDIA_REPEAT = 2714,<br/>KEY_IMAGES = 2715, KEY_BUTTONCONFIG = 2716, KEY_TASKMANAGER = 2717, KEY_JOURNAL = 2718,<br/>KEY_CONTROLPANEL = 2719, KEY_APPSELECT = 2720, KEY_SCREENSAVER = 2721, KEY_ASSISTANT = 2722,<br/>KEY_KBD_LAYOUT_NEXT = 2723, KEY_BRIGHTNESS_MIN = 2724, KEY_BRIGHTNESS_MAX = 2725, KEY_KBDINPUTASSIST_PREV = 2726,<br/>KEY_KBDINPUTASSIST_NEXT = 2727, KEY_KBDINPUTASSIST_PREVGROUP = 2728, KEY_KBDINPUTASSIST_NEXTGROUP = 2729, KEY_KBDINPUTASSIST_ACCEPT = 2730,<br/>KEY_KBDINPUTASSIST_CANCEL = 2731, KEY_FRONT = 2800, KEY_SETUP = 2801, KEY_WAKEUP = 2802,<br/>KEY_SENDFILE = 2803, KEY_DELETEFILE = 2804, KEY_XFER = 2805, KEY_PROG1 = 2806,<br/>KEY_PROG2 = 2807, KEY_MSDOS = 2808, KEY_SCREENLOCK = 2809, KEY_DIRECTION_ROTATE_DISPLAY = 2810,<br/>KEY_CYCLEWINDOWS = 2811, KEY_COMPUTER = 2812, KEY_EJECTCLOSECD = 2813, KEY_ISO = 2814,<br/>KEY_MOVE = 2815, KEY_F13 = 2816, KEY_F14 = 2817, KEY_F15 = 2818,<br/>KEY_F16 = 2819, KEY_F17 = 2820, KEY_F18 = 2821, KEY_F19 = 2822,<br/>KEY_F20 = 2823, KEY_F21 = 2824, KEY_F22 = 2825, KEY_F23 = 2826,<br/>KEY_F24 = 2827, KEY_PROG3 = 2828, KEY_PROG4 = 2829, KEY_DASHBOARD = 2830,<br/>KEY_SUSPEND = 2831, KEY_HP = 2832, KEY_SOUND = 2833, KEY_QUESTION = 2834,<br/>KEY_CONNECT = 2836, KEY_SPORT = 2837, KEY_SHOP = 2838, KEY_ALTERASE = 2839,<br/>KEY_SWITCHVIDEOMODE = 2841, KEY_BATTERY = 2842, KEY_BLUETOOTH = 2843, KEY_WLAN = 2844,<br/>KEY_UWB = 2845, KEY_WWAN_WIMAX = 2846, KEY_RFKILL = 2847, KEY_CHANNEL = 3001,<br/>KEY_BTN_0 = 3100, KEY_BTN_1 = 3101, KEY_BTN_2 = 3102, KEY_BTN_3 = 3103,<br/>KEY_BTN_4 = 3104, KEY_BTN_5 = 3105, KEY_BTN_6 = 3106, KEY_BTN_7 = 3107,<br/>KEY_BTN_8 = 3108, KEY_BTN_9 = 3109<br/>} | 按键事件的键码。 | 56| [OH_NativeXComponent_KeyAction](#oh_nativexcomponent_keyaction) { OH_NATIVEXCOMPONENT_KEY_ACTION_UNKNOWN = -1, OH_NATIVEXCOMPONENT_KEY_ACTION_DOWN = 0, OH_NATIVEXCOMPONENT_KEY_ACTION_UP } | 按键事件动作。 | 57|[ArkUI_XComponent_ImageAnalyzerState](#arkui_xcomponent_imageanalyzerstate) { ARKUI_XCOMPONENT_AI_ANALYSIS_FINISHED = 0, ARKUI_XCOMPONENT_AI_ANALYSIS_DISABLED = 110000, ARKUI_XCOMPONENT_AI_ANALYSIS_UNSUPPORTED = 110001, ARKUI_XCOMPONENT_AI_ANALYSIS_ONGOING = 110002, ARKUI_XCOMPONENT_AI_ANALYSIS_STOPPED = 110003}|XComponent图像AI分析状态码。| 58 59 60### 函数 61 62| 名称 | 描述 | 63| ---------------------------------------- | -------------------------------------- | 64| [OH_NativeXComponent_GetXComponentId](#oh_nativexcomponent_getxcomponentid) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, char \*id, uint64_t \*size) | 获取ArkUI XComponent的id。 | 65| [OH_NativeXComponent_GetXComponentSize](#oh_nativexcomponent_getxcomponentsize) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, const void \*window, uint64_t \*width, uint64_t \*height) | 获取ArkUI XComponent持有的surface的大小。 | 66| [OH_NativeXComponent_GetXComponentOffset](#oh_nativexcomponent_getxcomponentoffset) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, const void \*window, double \*x, double \*y) | 获取XComponent持有的surface相对其父组件左顶点的偏移量。 | 67| [OH_NativeXComponent_GetTouchEvent](#oh_nativexcomponent_gettouchevent) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, const void \*window, [OH_NativeXComponent_TouchEvent](_o_h___native_x_component___touch_event.md) \*touchEvent) | 获取ArkUI XComponent调度的触摸事件。 | 68| [OH_NativeXComponent_GetTouchPointToolType](#oh_nativexcomponent_gettouchpointtooltype) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, uint32_t pointIndex, [OH_NativeXComponent_TouchPointToolType](#oh_nativexcomponent_touchpointtooltype) \*toolType) | 获取ArkUI XComponent触摸点工具类型。 | 69| [OH_NativeXComponent_GetTouchPointTiltX](#oh_nativexcomponent_gettouchpointtiltx) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, uint32_t pointIndex, float \*tiltX) | 获取ArkUI XComponent触摸点倾斜与X轴角度。 | 70| [OH_NativeXComponent_GetTouchPointTiltY](#oh_nativexcomponent_gettouchpointtilty) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, uint32_t pointIndex, float \*tiltY) | 获取ArkUI XComponent触摸点倾斜与Y轴角度。 | 71| [OH_NativeXComponent_GetMouseEvent](#oh_nativexcomponent_getmouseevent) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, const void \*window, [OH_NativeXComponent_MouseEvent](_o_h___native_x_component___mouse_event.md) \*mouseEvent) | 获取ArkUI XComponent调度的鼠标事件。 | 72| [OH_NativeXComponent_RegisterCallback](#oh_nativexcomponent_registercallback) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, [OH_NativeXComponent_Callback](_o_h___native_x_component___callback.md) \*callback) | 为此OH_NativeXComponent实例注册回调。 | 73| [OH_NativeXComponent_RegisterMouseEventCallback](#oh_nativexcomponent_registermouseeventcallback) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, [OH_NativeXComponent_MouseEvent_Callback](_o_h___native_x_component___mouse_event___callback.md) \*callback) | 为此OH_NativeXComponent实例注册鼠标事件回调。 | 74| [OH_NativeXComponent_RegisterFocusEventCallback](#oh_nativexcomponent_registerfocuseventcallback) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, void(\*callback)([OH_NativeXComponent](#oh_nativexcomponent) \*component, void \*window)) | 为此OH_NativeXComponent实例注册获焦事件回调。 | 75| [OH_NativeXComponent_RegisterKeyEventCallback](#oh_nativexcomponent_registerkeyeventcallback) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, void(\*callback)([OH_NativeXComponent](#oh_nativexcomponent) \*component, void \*window)) | 为此OH_NativeXComponent实例注册按键事件回调。 | 76| [OH_NativeXComponent_RegisterKeyEventCallbackWithResult](#oh_nativexcomponent_registerkeyeventcallbackwithresult) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, bool(\*callback)([OH_NativeXComponent](#oh_nativexcomponent) \*component, void \*window)) | 为此OH_NativeXComponent实例注册有返回值的按键事件回调。 | 77| [OH_NativeXComponent_RegisterBlurEventCallback](#oh_nativexcomponent_registerblureventcallback) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, void(\*callback)([OH_NativeXComponent](#oh_nativexcomponent) \*component, void \*window)) | 为此OH_NativeXComponent实例注册失焦事件回调。 | 78| [OH_NativeXComponent_GetKeyEvent](#oh_nativexcomponent_getkeyevent) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, [OH_NativeXComponent_KeyEvent](#oh_nativexcomponent_keyevent) \*\*keyEvent) | 获取ArkUI XComponent调度的按键事件。 | 79| [OH_NativeXComponent_GetKeyEventAction](#oh_nativexcomponent_getkeyeventaction) ([OH_NativeXComponent_KeyEvent](#oh_nativexcomponent_keyevent) \*keyEvent, [OH_NativeXComponent_KeyAction](#oh_nativexcomponent_keyaction) \*action) | 获取传入按键事件的动作。 | 80| [OH_NativeXComponent_GetKeyEventCode](#oh_nativexcomponent_getkeyeventcode) ([OH_NativeXComponent_KeyEvent](#oh_nativexcomponent_keyevent) \*keyEvent, [OH_NativeXComponent_KeyCode](#oh_nativexcomponent_keycode) \*code) | 获取传入按键事件的按键码。 | 81| [OH_NativeXComponent_GetKeyEventSourceType](#oh_nativexcomponent_getkeyeventsourcetype) ([OH_NativeXComponent_KeyEvent](#oh_nativexcomponent_keyevent) \*keyEvent, [OH_NativeXComponent_EventSourceType](#oh_nativexcomponent_eventsourcetype) \*sourceType) | 获取传入按键事件的事件源类型。 | 82| [OH_NativeXComponent_GetKeyEventDeviceId](#oh_nativexcomponent_getkeyeventdeviceid) ([OH_NativeXComponent_KeyEvent](#oh_nativexcomponent_keyevent) \*keyEvent, int64_t \*deviceId) | 获取传入按键事件的设备id。 | 83| [OH_NativeXComponent_GetKeyEventTimeStamp](#oh_nativexcomponent_getkeyeventtimestamp) ([OH_NativeXComponent_KeyEvent](#oh_nativexcomponent_keyevent) \*keyEvent, int64_t \*timeStamp) | 获取传入按键事件的时间戳。 | 84| [OH_NativeXComponent_SetExpectedFrameRateRange](#oh_nativexcomponent_setexpectedframeraterange) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, [OH_NativeXComponent_ExpectedRateRange](_o_h___native_x_component___expected_rate_range.md) \*range) | 设置期望帧率范围。 | 85| [OH_NativeXComponent_RegisterOnFrameCallback](#oh_nativexcomponent_registeronframecallback) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, void(\*callback)([OH_NativeXComponent](#oh_nativexcomponent) \*component, uint64_t timestamp, uint64_t targetTimestamp)) | 为此OH_NativeXComponent实例注册显示更新回调,并使能每帧回调此函数。 | 86| [OH_NativeXComponent_UnregisterOnFrameCallback](#oh_nativexcomponent_unregisteronframecallback) ([OH_NativeXComponent](#oh_nativexcomponent) \*component) | 为此OH_NativeXComponent实例取消注册回调函数,并关闭每帧回调此函数。 | 87| int32_t [OH_NativeXComponent_AttachNativeRootNode](#oh_nativexcomponent_attachnativerootnode) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, [ArkUI_NodeHandle](_ark_u_i___native_module.md#arkui_nodehandle) root) | 将通过ArkUI的native接口创建出来的UI组件挂载到当前XComponent上。 | 88| int32_t [OH_NativeXComponent_DetachNativeRootNode](#oh_nativexcomponent_detachnativerootnode) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, [ArkUI_NodeHandle](_ark_u_i___native_module.md#arkui_nodehandle) root) | 将ArkUI的native组件从当前XComponent上卸载. | 89| int32_t [OH_NativeXComponent_RegisterUIInputEventCallback](#oh_nativexcomponent_registeruiinputeventcallback) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, void(\*callback)([OH_NativeXComponent](#oh_nativexcomponent) \*component, [ArkUI_UIInputEvent](_ark_u_i___event_module.md#arkui_uiinputevent) \*event, [ArkUI_UIInputEvent_Type](_ark_u_i___event_module.md#arkui_uiinputevent_type) type), [ArkUI_UIInputEvent_Type](_ark_u_i___event_module.md#arkui_uiinputevent_type) type) | 为此OH_NativeXComponent实例注册UI输入事件回调,并使能收到UI输入事件时回调此函数。 | 90| int32_t [OH_NativeXComponent_RegisterOnTouchInterceptCallback](#oh_nativexcomponent_registerontouchinterceptcallback) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, [HitTestMode](_ark_u_i___native_module.md#hittestmode)(\*callback)([OH_NativeXComponent](#oh_nativexcomponent) \*component, [ArkUI_UIInputEvent](_ark_u_i___event_module.md#arkui_uiinputevent) \*event)) | 为此OH_NativeXComponent实例注册自定义事件拦截回调,并使能在做触摸测试时回调此函数。 | 91| int32_t [OH_NativeXComponent_SetNeedSoftKeyboard](#oh_nativexcomponent_setneedsoftkeyboard) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, bool isNeedSoftKeyboard) | 为此OH_NativeXComponent实例设置是否需要软键盘。 | 92| int32_t [OH_NativeXComponent_RegisterSurfaceShowCallback](#oh_nativexcomponent_registersurfaceshowcallback) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, void(\*callback)([OH_NativeXComponent](#oh_nativexcomponent) \*component, void \*window)) | 为此OH_NativeXComponent实例注册surface显示回调,该回调在应用从后台返回前台后触发。 | 93| int32_t [OH_NativeXComponent_RegisterSurfaceHideCallback](#oh_nativexcomponent_registersurfacehidecallback) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, void(\*callback)([OH_NativeXComponent](#oh_nativexcomponent) \*component, void \*window)) | 为此OH_NativeXComponent实例注册surface隐藏回调,该回调在应用从前台来到后台后触发。 | 94| int32_t [OH_NativeXComponent_GetTouchEventSourceType](#oh_nativexcomponent_gettoucheventsourcetype) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, int32_t pointId, [OH_NativeXComponent_EventSourceType](#oh_nativexcomponent_eventsourcetype) \*sourceType) | 获取ArkUI XComponent触摸事件的输入设备类型。 | 95| [OH_NativeXComponent](#oh_nativexcomponent) \* [OH_NativeXComponent_GetNativeXComponent](#oh_nativexcomponent_getnativexcomponent) ([ArkUI_NodeHandle](_ark_u_i___native_module.md#arkui_nodehandle) node) | 基于Native接口创建的组件实例获取OH_NativeXComponent类型的指针。 | 96| int32_t [OH_NativeXComponent_GetNativeAccessibilityProvider](#oh_nativexcomponent_getnativeaccessibilityprovider)([OH_NativeXComponent](#oh_nativexcomponent)* component, [ArkUI_AccessibilityProvider](./arkui_native_interface_accessibility.md#arkui_accessibilityprovider)** handle); | 基于NativeXComponent实例获取的ArkUI_AccessibilityProvider类型的指针。 | 97| int32_t [OH_NativeXComponent_RegisterKeyEventCallbackWithResult](#oh_nativexcomponent_registerkeyeventcallbackwithresult) ([OH_NativeXComponent](#oh_nativexcomponent) \*component, bool(\*callback)([OH_NativeXComponent](#oh_nativexcomponent) \*component, void \*window)) | 为此OH_NativeXComponent实例注册有返回值的按键事件回调。 | 98|int32_t [OH_ArkUI_XComponent_StartImageAnalyzer](#oh_arkui_xcomponent_startimageanalyzer) ([ArkUI_NodeHandle](_ark_u_i___native_module.md#arkui_nodehandle) node, void \*userData,void (\*callback)([ArkUI_NodeHandle](_ark_u_i___native_module.md#arkui_nodehandle) node, [ArkUI_XComponent_ImageAnalyzerState](#arkui_xcomponent_imageanalyzerstate) statusCode, void \*userData))|为此XComponent实例开始图像AI分析。| 99|int32_t [OH_ArkUI_XComponent_StopImageAnalyzer](#oh_arkui_xcomponent_stopimageanalyzer)([ArkUI_NodeHandle](_ark_u_i___native_module.md#arkui_nodehandle) node)|为此XComponent实例停止图像AI分析。| 100 101### 变量 102 103| 名称 | 描述 | 104| ---------------------------------------- | ------------------------------ | 105| **OH_XCOMPONENT_ID_LEN_MAX** = 128 | ArkUI XComponent的id最大长度。 | 106| **OH_MAX_TOUCH_POINTS_NUMBER** = 10 | 触摸事件中的可识别的触摸点个数最大值。 | 107| [OH_NativeXComponent_TouchPoint::id](#id-12) = 0 | 手指的唯一标识符。 | 108| [OH_NativeXComponent_TouchPoint::screenX](#screenx-13) = 0.0 | 触摸点相对于XComponent所在应用窗口左上角的x坐标。 | 109| [OH_NativeXComponent_TouchPoint::screenY](#screeny-13) = 0.0 | 触摸点相对于XComponent所在应用窗口左上角的y坐标。 | 110| [OH_NativeXComponent_TouchPoint::x](#x-13) = 0.0 | 触摸点相对于XComponent组件左边缘的x坐标。 | 111| [OH_NativeXComponent_TouchPoint::y](#y-13) = 0.0 | 触摸点相对于XComponent组件上边缘的y坐标。 | 112| [OH_NativeXComponent_TouchPoint::type](#type-12) = OH_NativeXComponent_TouchEventType::OH_NATIVEXCOMPONENT_UNKNOWN | 触摸事件的触摸类型。 | 113| [OH_NativeXComponent_TouchPoint::size](#size-12) = 0.0 | 指垫和屏幕之间的接触面积。 | 114| [OH_NativeXComponent_TouchPoint::force](#force-12) = 0.0 | 当前触摸事件的压力。 | 115| [OH_NativeXComponent_TouchPoint::timeStamp](#timestamp-12) = 0 | 当前触摸事件的时间戳。 | 116| [OH_NativeXComponent_TouchPoint::isPressed](#ispressed) = false | 当前点是否被按下。 | 117| [OH_NativeXComponent_TouchEvent::id](#id-22) = 0 | 手指的唯一标识符。 | 118| [OH_NativeXComponent_TouchEvent::screenX](#screenx-23) = 0.0 | 触摸点相对于XComponent所在应用窗口左上角的x坐标。 | 119| [OH_NativeXComponent_TouchEvent::screenY](#screeny-23) = 0.0 | 触摸点相对于XComponent所在应用窗口左上角的y坐标。 | 120| [OH_NativeXComponent_TouchEvent::x](#x-23) = 0.0 | 触摸点相对于XComponent组件左边缘的x坐标。 | 121| [OH_NativeXComponent_TouchEvent::y](#y-23) = 0.0 | 触摸点相对于XComponent组件上边缘的y坐标。 | 122| [OH_NativeXComponent_TouchEvent::type](#type-22) = OH_NativeXComponent_TouchEventType::OH_NATIVEXCOMPONENT_UNKNOWN | 触摸事件的触摸类型。 | 123| [OH_NativeXComponent_TouchEvent::size](#size-22) = 0.0 | 指垫和屏幕之间的接触面积。 | 124| [OH_NativeXComponent_TouchEvent::force](#force-22) = 0.0 | 当前触摸事件的压力。 | 125| [OH_NativeXComponent_TouchEvent::deviceId](#deviceid) = 0 | 产生当前触摸事件的设备的ID。 | 126| [OH_NativeXComponent_TouchEvent::timeStamp](#timestamp-22) = 0 | 当前触摸事件的时间戳。 | 127| [OH_NativeXComponent_TouchEvent::touchPoints](#touchpoints) [OH_MAX_TOUCH_POINTS_NUMBER] | 当前触摸点的数组。 | 128| [OH_NativeXComponent_TouchEvent::numPoints](#numpoints) = 0 | 当前接触点的数量。 | 129| [OH_NativeXComponent_MouseEvent::x](#x-33) = 0.0 | 点击触点相对于当前组件左上角的x轴坐标。 | 130| [OH_NativeXComponent_MouseEvent::y](#y-33)= 0.0 | 点击触点相对于当前组件左上角的y轴坐标。 | 131| [OH_NativeXComponent_MouseEvent::screenX](#screenx-33)= 0.0 | 点击触点相对于屏幕左上角的x轴坐标。 | 132| [OH_NativeXComponent_MouseEvent::screenY](#screeny-33)= 0.0 | 点击触点相对于屏幕左上角的y轴坐标。 | 133| [OH_NativeXComponent_MouseEvent::timestamp](#timestamp)= 0 | 当前鼠标事件的时间戳。 | 134| [OH_NativeXComponent_MouseEvent::action](#action)= [OH_NativeXComponent_MouseEventAction::OH_NATIVEXCOMPONENT_MOUSE_NONE](#oh_nativexcomponent_mouseeventaction) | 当前鼠标事件动作。 | 135| [OH_NativeXComponent_MouseEvent::button](#button)= [OH_NativeXComponent_MouseEventButton::OH_NATIVEXCOMPONENT_NONE_BUTTON](#oh_nativexcomponent_mouseeventbutton) | 鼠标事件按键。 | 136| [OH_NativeXComponent_Callback::OnSurfaceCreated](#onsurfacecreated) | 创建surface时调用。 | 137| [OH_NativeXComponent_Callback::OnSurfaceChanged](#onsurfacechanged) | 当surface改变时调用。 | 138| [OH_NativeXComponent_Callback::OnSurfaceDestroyed](#onsurfacedestroyed) | 当surface被销毁时调用。 | 139| [OH_NativeXComponent_Callback::DispatchTouchEvent](#dispatchtouchevent) | 当触摸事件被触发时调用。 | 140| [OH_NativeXComponent_MouseEvent_Callback::DispatchMouseEvent](#dispatchmouseevent) | 当鼠标事件被触发时调用。 | 141| [OH_NativeXComponent_MouseEvent_Callback::DispatchHoverEvent](#dispatchhoverevent) | 当悬停事件被触发时调用。 | 142 143 144## 类型定义说明 145 146 147### OH_NativeXComponent 148 149``` 150typedef struct OH_NativeXComponent OH_NativeXComponent 151``` 152 153**描述:** 154 155提供封装的OH_NativeXComponent实例。 156 157**起始版本:** 158 1598 160 161 162### OH_NativeXComponent_Callback 163 164``` 165typedef struct OH_NativeXComponent_Callback OH_NativeXComponent_Callback 166``` 167 168**描述:** 169 170注册surface生命周期和触摸事件回调。 171 172**起始版本:** 173 1748 175 176 177### OH_NativeXComponent_KeyEvent 178 179``` 180typedef struct OH_NativeXComponent_KeyEvent OH_NativeXComponent_KeyEvent 181``` 182 183**描述:** 184 185提供封装的OH_NativeXComponent_KeyEvent实例。 186 187**起始版本:** 188 18910 190 191 192### OH_NativeXComponent_MouseEvent_Callback 193 194``` 195typedef struct OH_NativeXComponent_MouseEvent_Callback OH_NativeXComponent_MouseEvent_Callback 196``` 197 198**描述:** 199 200注册鼠标事件的回调。 201 202**起始版本:** 203 2049 205 206 207## 枚举类型说明 208 209 210### anonymous enum 211 212``` 213anonymous enum 214``` 215 216**描述:** 217 218枚举API访问状态。 219 220| 枚举值 | 描述 | 221| ---------------------------------------- | ----- | 222| OH_NATIVEXCOMPONENT_RESULT_SUCCESS | 成功结果。 | 223| OH_NATIVEXCOMPONENT_RESULT_FAILED | 失败结果。 | 224| OH_NATIVEXCOMPONENT_RESULT_BAD_PARAMETER | 无效参数。 | 225 226**起始版本:** 227 2288 229 230 231### OH_NativeXComponent_EventSourceType 232 233``` 234enum OH_NativeXComponent_EventSourceType 235``` 236 237**描述:** 238 239触摸事件源类型。 240 241| 枚举值 | 描述 | 242| ------------------------------------------- | ------------------------------------------------------ | 243| OH_NATIVEXCOMPONENT_SOURCE_TYPE_UNKNOWN | 未知的输入源类型。 | 244| OH_NATIVEXCOMPONENT_SOURCE_TYPE_MOUSE | 表示输入源生成鼠标多点触摸事件。 | 245| OH_NATIVEXCOMPONENT_SOURCE_TYPE_TOUCHSCREEN | 表示输入源生成一个触摸屏多点触摸事件。 | 246| OH_NATIVEXCOMPONENT_SOURCE_TYPE_TOUCHPAD | 表示输入源生成一个触摸板多点触摸事件。 | 247| OH_NATIVEXCOMPONENT_SOURCE_TYPE_JOYSTICK | 表示输入源生成一个操纵杆多点触摸事件。 | 248| OH_NATIVEXCOMPONENT_SOURCE_TYPE_KEYBOARD<sup>10+</sup> | 表示输入源生成一个键盘事件。 | 249 250**起始版本:** 251 2529 253 254 255### OH_NativeXComponent_KeyAction 256 257``` 258enum OH_NativeXComponent_KeyAction 259``` 260 261**描述:** 262 263按键事件动作。 264 265| 枚举值 | 描述 | 266| -------------------------------------- | -------- | 267| OH_NATIVEXCOMPONENT_KEY_ACTION_UNKNOWN | 未知的按键动作。 | 268| OH_NATIVEXCOMPONENT_KEY_ACTION_DOWN | 按键按下动作。 | 269| OH_NATIVEXCOMPONENT_KEY_ACTION_UP | 按键抬起动作。 | 270 271**起始版本:** 272 27310 274 275 276### OH_NativeXComponent_KeyCode 277 278``` 279enum OH_NativeXComponent_KeyCode 280``` 281 282**描述:** 283 284按键事件的键码。 285 286| 枚举值 | 描述 | 287| ---------------------------- | --------------------------- | 288| KEY_UNKNOWN | 未知按键 | 289| KEY_FN | 功能(Fn)键 | 290| KEY_HOME | 功能(Home)键 | 291| KEY_BACK | 返回键 | 292| KEY_MEDIA_PLAY_PAUSE | 多媒体键 播放/暂停 | 293| KEY_MEDIA_STOP | 多媒体键 停止 | 294| KEY_MEDIA_NEXT | 多媒体键 下一首 | 295| KEY_MEDIA_PREVIOUS | 多媒体键 上一首 | 296| KEY_MEDIA_REWIND | 多媒体键 快退 | 297| KEY_MEDIA_FAST_FORWARD | 多媒体键 快进 | 298| KEY_VOLUME_UP | 音量增加键 | 299| KEY_VOLUME_DOWN | 音量减小键 | 300| KEY_POWER | 电源键 | 301| KEY_CAMERA | 拍照键 | 302| KEY_VOLUME_MUTE | 扬声器静音键 | 303| KEY_MUTE | 话筒静音键 | 304| KEY_BRIGHTNESS_UP | 亮度调节按键 调亮 | 305| KEY_BRIGHTNESS_DOWN | 亮度调节按键 调暗 | 306| KEY_0 | 按键'0' | 307| KEY_1 | 按键'1' | 308| KEY_2 | 按键'2' | 309| KEY_3 | 按键'3' | 310| KEY_4 | 按键'4' | 311| KEY_5 | 按键'5' | 312| KEY_6 | 按键'6' | 313| KEY_7 | 按键'7' | 314| KEY_8 | 按键'8' | 315| KEY_9 | 按键'9' | 316| KEY_STAR | 按键'\*' | 317| KEY_POUND | 按键'\#' | 318| KEY_DPAD_UP | 导航键 向上 | 319| KEY_DPAD_DOWN | 导航键 向下 | 320| KEY_DPAD_LEFT | 导航键 向左 | 321| KEY_DPAD_RIGHT | 导航键 向右 | 322| KEY_DPAD_CENTER | 导航键 确定键 | 323| KEY_A | 按键'A' | 324| KEY_B | 按键'B' | 325| KEY_C | 按键'C' | 326| KEY_D | 按键'D' | 327| KEY_E | 按键'E' | 328| KEY_F | 按键'F' | 329| KEY_G | 按键'G' | 330| KEY_H | 按键'H' | 331| KEY_I | 按键'I' | 332| KEY_J | 按键'J' | 333| KEY_K | 按键'K' | 334| KEY_L | 按键'L' | 335| KEY_M | 按键'M' | 336| KEY_N | 按键'N' | 337| KEY_O | 按键'O' | 338| KEY_P | 按键'P' | 339| KEY_Q | 按键'Q' | 340| KEY_R | 按键'R' | 341| KEY_S | 按键'S' | 342| KEY_T | 按键'T' | 343| KEY_U | 按键'U' | 344| KEY_V | 按键'V' | 345| KEY_W | 按键'W' | 346| KEY_X | 按键'X' | 347| KEY_Y | 按键'Y' | 348| KEY_Z | 按键'Z' | 349| KEY_COMMA | 按键',' | 350| KEY_PERIOD | 按键'.' | 351| KEY_ALT_LEFT | 左Alt键 | 352| KEY_ALT_RIGHT | 右Alt键 | 353| KEY_SHIFT_LEFT | 左Shift键 | 354| KEY_SHIFT_RIGHT | 右Shift键 | 355| KEY_TAB | Tab键 | 356| KEY_SPACE | 空格键 | 357| KEY_SYM | 符号修改器按键 | 358| KEY_EXPLORER | 浏览器功能键,此键用于启动浏览器应用程序。 | 359| KEY_ENVELOPE | 电子邮件功能键,此键用于启动电子邮件应用程序。 | 360| KEY_ENTER | 回车键 | 361| KEY_DEL | 退格键 | 362| KEY_GRAVE | 按键'‘’ | 363| KEY_MINUS | 按键'-' | 364| KEY_EQUALS | 按键'=' | 365| KEY_LEFT_BRACKET | 按键'[' | 366| KEY_RIGHT_BRACKET | 按键']' | 367| KEY_BACKSLASH | 按键'\' | 368| KEY_SEMICOLON | 按键';' | 369| KEY_APOSTROPHE | 按键''' (单引号) | 370| KEY_SLASH | 按键'/' | 371| KEY_AT | 按键'\@' | 372| KEY_PLUS | 按键'+' | 373| KEY_MENU | 菜单键 | 374| KEY_PAGE_UP | 向上翻页键 | 375| KEY_PAGE_DOWN | 向下翻页键 | 376| KEY_ESCAPE | ESC键 | 377| KEY_FORWARD_DEL | 删除键 | 378| KEY_CTRL_LEFT | 左Ctrl键 | 379| KEY_CTRL_RIGHT | 右Ctrl键 | 380| KEY_CAPS_LOCK | 大写锁定键 | 381| KEY_SCROLL_LOCK | 滚动锁定键 | 382| KEY_META_LEFT | 左元修改器键 | 383| KEY_META_RIGHT | 右元修改器键 | 384| KEY_FUNCTION | 功能键 | 385| KEY_SYSRQ | 系统请求/打印屏幕键 | 386| KEY_BREAK | Break/Pause键 | 387| KEY_MOVE_HOME | 光标移动到开始键 | 388| KEY_MOVE_END | 光标移动到末尾键 | 389| KEY_INSERT | 插入键 | 390| KEY_FORWARD | 前进键 | 391| KEY_MEDIA_PLAY | 多媒体键 播放 | 392| KEY_MEDIA_PAUSE | 多媒体键 暂停 | 393| KEY_MEDIA_CLOSE | 多媒体键 关闭 | 394| KEY_MEDIA_EJECT | 多媒体键 弹出 | 395| KEY_MEDIA_RECORD | 多媒体键 录音 | 396| KEY_F1 | 按键'F1' | 397| KEY_F2 | 按键'F2' | 398| KEY_F3 | 按键'F3' | 399| KEY_F4 | 按键'F4' | 400| KEY_F5 | 按键'F5' | 401| KEY_F6 | 按键'F6' | 402| KEY_F7 | 按键'F7' | 403| KEY_F8 | 按键'F8' | 404| KEY_F9 | 按键'F9' | 405| KEY_F10 | 按键'F10' | 406| KEY_F11 | 按键'F11' | 407| KEY_F12 | 按键'F12' | 408| KEY_NUM_LOCK | 小键盘锁 | 409| KEY_NUMPAD_0 | 小键盘按键'0' | 410| KEY_NUMPAD_1 | 小键盘按键'1' | 411| KEY_NUMPAD_2 | 小键盘按键'2' | 412| KEY_NUMPAD_3 | 小键盘按键'3' | 413| KEY_NUMPAD_4 | 小键盘按键'4' | 414| KEY_NUMPAD_5 | 小键盘按键'5' | 415| KEY_NUMPAD_6 | 小键盘按键'6' | 416| KEY_NUMPAD_7 | 小键盘按键'7' | 417| KEY_NUMPAD_8 | 小键盘按键'8' | 418| KEY_NUMPAD_9 | 小键盘按键'9' | 419| KEY_NUMPAD_DIVIDE | 小键盘按键'/' | 420| KEY_NUMPAD_MULTIPLY | 小键盘按键'\*' | 421| KEY_NUMPAD_SUBTRACT | 小键盘按键'-' | 422| KEY_NUMPAD_ADD | 小键盘按键'+' | 423| KEY_NUMPAD_DOT | 小键盘按键'.' | 424| KEY_NUMPAD_COMMA | 小键盘按键',' | 425| KEY_NUMPAD_ENTER | 小键盘按键回车 | 426| KEY_NUMPAD_EQUALS | 小键盘按键'=' | 427| KEY_NUMPAD_LEFT_PAREN | 小键盘按键'(' | 428| KEY_NUMPAD_RIGHT_PAREN | 小键盘按键')' | 429| KEY_VIRTUAL_MULTITASK | 虚拟多任务键 | 430| KEY_SLEEP | 睡眠键 | 431| KEY_ZENKAKU_HANKAKU | 日文全宽/半宽键 | 432| KEY_102ND | 102nd按键 | 433| KEY_RO | 日文Ro键 | 434| KEY_KATAKANA | 日文片假名键 | 435| KEY_HIRAGANA | 日文平假名键 | 436| KEY_HENKAN | 日文转换键 | 437| KEY_KATAKANA_HIRAGANA | 日语片假名/平假名键 | 438| KEY_MUHENKAN | 日文非转换键 | 439| KEY_LINEFEED | 换行键 | 440| KEY_MACRO | 宏键 | 441| KEY_NUMPAD_PLUSMINUS | 数字键盘上的加号/减号键 | 442| KEY_SCALE | 扩展键 | 443| KEY_HANGUEL | 日文韩语键 | 444| KEY_HANJA | 日文汉语键 | 445| KEY_YEN | 日元键 | 446| KEY_STOP | 停止键 | 447| KEY_AGAIN | 重复键 | 448| KEY_PROPS | 道具键 | 449| KEY_UNDO | 撤消键 | 450| KEY_COPY | 复制键 | 451| KEY_OPEN | 打开键 | 452| KEY_PASTE | 粘贴键 | 453| KEY_FIND | 查找键 | 454| KEY_CUT | 剪切键 | 455| KEY_HELP | 帮助键 | 456| KEY_CALC | 计算器特殊功能键,用于启动计算器应用程序 | 457| KEY_FILE | 文件按键 | 458| KEY_BOOKMARKS | 书签键 | 459| KEY_NEXT | 下一个按键 | 460| KEY_PLAYPAUSE | 播放/暂停键 | 461| KEY_PREVIOUS | 上一个按键 | 462| KEY_STOPCD | CD停止键 | 463| KEY_CONFIG | 配置键 | 464| KEY_REFRESH | 刷新键 | 465| KEY_EXIT | 退出键 | 466| KEY_EDIT | 编辑键 | 467| KEY_SCROLLUP | 向上滚动键 | 468| KEY_SCROLLDOWN | 向下滚动键 | 469| KEY_NEW | 新建键 | 470| KEY_REDO | 恢复键 | 471| KEY_CLOSE | 关闭键 | 472| KEY_PLAY | 播放键 | 473| KEY_BASSBOOST | 低音增强键 | 474| KEY_PRINT | 打印键 | 475| KEY_CHAT | 聊天键 | 476| KEY_FINANCE | 金融键 | 477| KEY_CANCEL | 取消键 | 478| KEY_KBDILLUM_TOGGLE | 键盘灯光切换键 | 479| KEY_KBDILLUM_DOWN | 键盘灯光调亮键 | 480| KEY_KBDILLUM_UP | 键盘灯光调暗键 | 481| KEY_SEND | 发送键 | 482| KEY_REPLY | 答复键 | 483| KEY_FORWARDMAIL | 邮件转发键 | 484| KEY_SAVE | 保存键 | 485| KEY_DOCUMENTS | 文件键 | 486| KEY_VIDEO_NEXT | 下一个视频键 | 487| KEY_VIDEO_PREV | 上一个视频键 | 488| KEY_BRIGHTNESS_CYCLE | 背光渐变键 | 489| KEY_BRIGHTNESS_ZERO | 亮度调节为0键 | 490| KEY_DISPLAY_OFF | 显示关闭键 | 491| KEY_BTN_MISC | 游戏手柄上的各种按键 | 492| KEY_GOTO | 进入键 | 493| KEY_INFO | 信息查看键 | 494| KEY_PROGRAM | 程序键 | 495| KEY_PVR | 个人录像机(PVR)键 | 496| KEY_SUBTITLE | 字幕键 | 497| KEY_FULL_SCREEN | 全屏键 | 498| KEY_KEYBOARD | 键盘 | 499| KEY_ASPECT_RATIO | 屏幕纵横比调节键 | 500| KEY_PC | 端口控制键 | 501| KEY_TV | TV键 | 502| KEY_TV2 | TV键2 | 503| KEY_VCR | 录像机开启键 | 504| KEY_VCR2 | 录像机开启键2 | 505| KEY_SAT | SIM卡应用工具包(SAT)键 | 506| KEY_CD | CD键 | 507| KEY_TAPE | 磁带键 | 508| KEY_TUNER | 调谐器键 | 509| KEY_PLAYER | 播放器键 | 510| KEY_DVD | DVD键 | 511| KEY_AUDIO | 音频键 | 512| KEY_VIDEO | 视频键 | 513| KEY_MEMO | 备忘录键 | 514| KEY_CALENDAR | 日历键 | 515| KEY_RED | 红色指示器 | 516| KEY_GREEN | 绿色指示器 | 517| KEY_YELLOW | 黄色指示器 | 518| KEY_BLUE | 蓝色指示器 | 519| KEY_CHANNELUP | 频道向上键 | 520| KEY_CHANNELDOWN | 频道向下键 | 521| KEY_LAST | 末尾键 | 522| KEY_RESTART | 重启键 | 523| KEY_SLOW | 慢速键 | 524| KEY_SHUFFLE | 随机播放键 | 525| KEY_VIDEOPHONE | 可视电话键 | 526| KEY_GAMES | 游戏键 | 527| KEY_ZOOMIN | 放大键 | 528| KEY_ZOOMOUT | 缩小键 | 529| KEY_ZOOMRESET | 缩放重置键 | 530| KEY_WORDPROCESSOR | 文字处理键 | 531| KEY_EDITOR | 编辑器键 | 532| KEY_SPREADSHEET | 电子表格键 | 533| KEY_GRAPHICSEDITOR | 图形编辑器键 | 534| KEY_PRESENTATION | 演示文稿键 | 535| KEY_DATABASE | 数据库键标 | 536| KEY_NEWS | 新闻键 | 537| KEY_VOICEMAIL | 语音信箱 | 538| KEY_ADDRESSBOOK | 通讯簿 | 539| KEY_MESSENGER | 通信键 | 540| KEY_BRIGHTNESS_TOGGLE | 亮度切换键 | 541| KEY_SPELLCHECK | AL拼写检查 | 542| KEY_COFFEE | 终端锁/屏幕保护程序 | 543| KEY_MEDIA_REPEAT | 媒体循环键 | 544| KEY_IMAGES | 图像键 | 545| KEY_BUTTONCONFIG | 按键配置键 | 546| KEY_TASKMANAGER | 任务管理器 | 547| KEY_JOURNAL | 日志按键 | 548| KEY_CONTROLPANEL | 控制面板键 | 549| KEY_APPSELECT | 应用程序选择键 | 550| KEY_SCREENSAVER | 屏幕保护程序键 | 551| KEY_ASSISTANT | 辅助键 | 552| KEY_KBD_LAYOUT_NEXT | 下一个键盘布局键 | 553| KEY_BRIGHTNESS_MIN | 最小亮度键 | 554| KEY_BRIGHTNESS_MAX | 最大亮度键 | 555| KEY_KBDINPUTASSIST_PREV | 键盘输入Assist_Previous | 556| KEY_KBDINPUTASSIST_NEXT | 键盘输入Assist_Next | 557| KEY_KBDINPUTASSIST_PREVGROUP | 键盘输入Assist_Previous | 558| KEY_KBDINPUTASSIST_NEXTGROUP | 键盘输入Assist_Next | 559| KEY_KBDINPUTASSIST_ACCEPT | 键盘输入Assist_Accept | 560| KEY_KBDINPUTASSIST_CANCEL | 键盘输入Assist_Cancel | 561| KEY_FRONT | 挡风玻璃除雾器开关 | 562| KEY_SETUP | 设置键 | 563| KEY_WAKEUP | 唤醒键 | 564| KEY_SENDFILE | 发送文件按键 | 565| KEY_DELETEFILE | 删除文件按键 | 566| KEY_XFER | 文件传输(XFER)按键 | 567| KEY_PROG1 | 程序键1 | 568| KEY_PROG2 | 程序键2 | 569| KEY_MSDOS | MS-DOS键(微软磁盘操作系统 | 570| KEY_SCREENLOCK | 屏幕锁定键 | 571| KEY_DIRECTION_ROTATE_DISPLAY | 方向旋转显示键 | 572| KEY_CYCLEWINDOWS | Windows循环键 | 573| KEY_COMPUTER | 按键 | 574| KEY_EJECTCLOSECD | 弹出CD键 | 575| KEY_ISO | ISO键 | 576| KEY_MOVE | 移动键 | 577| KEY_F13 | 按键'F13' | 578| KEY_F14 | 按键'F14' | 579| KEY_F15 | 按键'F15' | 580| KEY_F16 | 按键'F16' | 581| KEY_F17 | 按键'F17' | 582| KEY_F18 | 按键'F18' | 583| KEY_F19 | 按键'F19' | 584| KEY_F20 | 按键'F20' | 585| KEY_F21 | 按键'F21' | 586| KEY_F22 | 按键'F22' | 587| KEY_F23 | 按键'F23' | 588| KEY_F24 | 按键'F24' | 589| KEY_PROG3 | 程序键3 | 590| KEY_PROG4 | 程序键4 | 591| KEY_DASHBOARD | 仪表板 | 592| KEY_SUSPEND | 挂起键 | 593| KEY_HP | 高阶路径键 | 594| KEY_SOUND | 音量键 | 595| KEY_QUESTION | 疑问按键 | 596| KEY_CONNECT | 连接键 | 597| KEY_SPORT | 运动按键 | 598| KEY_SHOP | 商城键 | 599| KEY_ALTERASE | 交替键 | 600| KEY_SWITCHVIDEOMODE | 在可用视频之间循环输出(监视器/LCD/TV输出/等) | 601| KEY_BATTERY | 电池按键 | 602| KEY_BLUETOOTH | 蓝牙按键 | 603| KEY_WLAN | 无线局域网 | 604| KEY_UWB | 超宽带(UWB) | 605| KEY_WWAN_WIMAX | WWAN WiMAX按键 | 606| KEY_RFKILL | 控制所有收音机的键 | 607| KEY_CHANNEL | 向上频道键 | 608| KEY_BTN_0 | 按键0 | 609| KEY_BTN_1 | 按键1 | 610| KEY_BTN_2 | 按键2 | 611| KEY_BTN_3 | 按键3 | 612| KEY_BTN_4 | 按键4 | 613| KEY_BTN_5 | 按键5 | 614| KEY_BTN_6 | 按键6 | 615| KEY_BTN_7 | 按键7 | 616| KEY_BTN_8 | 按键8 | 617| KEY_BTN_9 | 按键9 | 618 619**起始版本:** 620 62110 622 623 624### OH_NativeXComponent_MouseEventAction 625 626``` 627enum OH_NativeXComponent_MouseEventAction 628``` 629 630**描述:** 631 632鼠标事件动作。 633 634| 枚举值 | 描述 | 635| --------------------------------- | ---------------- | 636| OH_NATIVEXCOMPONENT_MOUSE_NONE | 无效鼠标事件 。 | 637| OH_NATIVEXCOMPONENT_MOUSE_PRESS | 鼠标按键按下时触发鼠标事件。 | 638| OH_NATIVEXCOMPONENT_MOUSE_RELEASE | 鼠标按键松开时触发鼠标事件。 | 639| OH_NATIVEXCOMPONENT_MOUSE_MOVE | 鼠标在屏幕上移动时触发鼠标事件。 | 640| OH_NATIVEXCOMPONENT_MOUSE_CANCEL | 鼠标按键被取消时触发鼠标事件。 | 641 642**起始版本:** 643 6449 645 646 647### OH_NativeXComponent_MouseEventButton 648 649``` 650enum OH_NativeXComponent_MouseEventButton 651``` 652 653**描述:** 654 655鼠标事件按键。 656 657| 枚举值 | 描述 | 658| ---------------------------------- | ----------------- | 659| OH_NATIVEXCOMPONENT_NONE_BUTTON | 鼠标无按键操作时触发鼠标事件。 | 660| OH_NATIVEXCOMPONENT_LEFT_BUTTON | 按下鼠标左键时触发鼠标事件。 | 661| OH_NATIVEXCOMPONENT_RIGHT_BUTTON | 按下鼠标右键时触发鼠标事件。 | 662| OH_NATIVEXCOMPONENT_MIDDLE_BUTTON | 按下鼠标中键时触发鼠标事件。 | 663| OH_NATIVEXCOMPONENT_BACK_BUTTON | 按下鼠标左侧后退键时触发鼠标事件。 | 664| OH_NATIVEXCOMPONENT_FORWARD_BUTTON | 按下鼠标左侧前进键时触发鼠标事件。 | 665 666**起始版本:** 667 6689 669 670 671### OH_NativeXComponent_TouchEventType 672 673``` 674enum OH_NativeXComponent_TouchEventType 675``` 676 677**描述:** 678 679触摸事件类型。 680 681| 枚举值 | 描述 | 682| --------------------------- | --------------------- | 683| OH_NATIVEXCOMPONENT_DOWN | 手指按下时触发触摸事件。 | 684| OH_NATIVEXCOMPONENT_UP | 手指抬起时触发触摸事件。 | 685| OH_NATIVEXCOMPONENT_MOVE | 手指按下状态下在屏幕上移动时触发触摸事件。 | 686| OH_NATIVEXCOMPONENT_CANCEL | 触摸事件取消时触发事件。 | 687| OH_NATIVEXCOMPONENT_UNKNOWN | 无效的触摸类型。 | 688 689**起始版本:** 690 6918 692 693 694### OH_NativeXComponent_TouchPointToolType 695 696``` 697enum OH_NativeXComponent_TouchPointToolType 698``` 699 700**描述:** 701 702触摸点工具类型 703 704| 枚举值 | 描述 | 705| -------------------------------------- | -------- | 706| OH_NATIVEXCOMPONENT_TOOL_TYPE_UNKNOWN | 未识别工具类型。 | 707| OH_NATIVEXCOMPONENT_TOOL_TYPE_FINGER | 表示用手指。 | 708| OH_NATIVEXCOMPONENT_TOOL_TYPE_PEN | 表示用触笔。 | 709| OH_NATIVEXCOMPONENT_TOOL_TYPE_RUBBER | 表示用橡皮擦。 | 710| OH_NATIVEXCOMPONENT_TOOL_TYPE_BRUSH | 表示用画笔。 | 711| OH_NATIVEXCOMPONENT_TOOL_TYPE_PENCIL | 表示用铅笔。 | 712| OH_NATIVEXCOMPONENT_TOOL_TYPE_AIRBRUSH | 表示用气笔。 | 713| OH_NATIVEXCOMPONENT_TOOL_TYPE_MOUSE | 表示用鼠标。 | 714| OH_NATIVEXCOMPONENT_TOOL_TYPE_LENS | 表示用晶状体。 | 715 716**起始版本:** 717 7189 719 720### ArkUI_XComponent_ImageAnalyzerState 721 722``` 723enum ArkUI_XComponent_ImageAnalyzerState 724``` 725 726**描述** 727 728XComponent图像AI分析状态码。 729 730| 枚举值 | 描述 | 731| -------------------------------------- | -------- | 732| ARKUI_XCOMPONENT_AI_ANALYSIS_FINISHED | 图像AI分析完成。| 733| ARKUI_XCOMPONENT_AI_ANALYSIS_DISABLED | 图像AI分析已禁用。| 734| ARKUI_XCOMPONENT_AI_ANALYSIS_UNSUPPORTED | 设备不支持图像AI分析。| 735| ARKUI_XCOMPONENT_AI_ANALYSIS_ONGOING | 图像AI分析进行中。| 736| ARKUI_XCOMPONENT_AI_ANALYSIS_STOPPED | 图像AI分析停止。| 737 738**起始版本:** 739 74018 741 742## 函数说明 743 744### OH_NativeXComponent_AttachNativeRootNode() 745 746``` 747int32_t OH_NativeXComponent_AttachNativeRootNode (OH_NativeXComponent * component, ArkUI_NodeHandle root ) 748``` 749**描述:** 750 751将通过ArkUI的native接口创建出来的UI组件挂载到当前XComponent上。 752 753**起始版本:** 12 754 755**参数:** 756 757| 名称 | 描述 | 758| -------- | -------- | 759| component | 表示指向OH_NativeXComponent实例的指针。 | 760| root | 指向Native接口创建的组件实例的指针。 | 761 762**返回:** 763 7640:成功。 765 766-2:参数异常。 767 768 769### OH_NativeXComponent_DetachNativeRootNode() 770 771``` 772int32_t OH_NativeXComponent_DetachNativeRootNode (OH_NativeXComponent * component, ArkUI_NodeHandle root ) 773``` 774**描述:** 775 776将ArkUI的native组件从当前XComponent上卸载. 777 778**起始版本:** 12 779 780**参数:** 781 782| 名称 | 描述 | 783| -------- | -------- | 784| component | 表示指向OH_NativeXComponent实例的指针。 | 785| root | 指向Native接口创建的组件实例的指针。 | 786 787**返回:** 788 7890:成功。 790 791-2:参数异常。 792 793 794 795### OH_NativeXComponent_GetKeyEvent() 796 797``` 798int32_t OH_NativeXComponent_GetKeyEvent (OH_NativeXComponent * component, OH_NativeXComponent_KeyEvent ** keyEvent ) 799``` 800 801**描述:** 802 803获取ArkUI XComponent调度的按键事件。 804 805**参数:** 806 807| 名称 | 描述 | 808| --------- | ----------------------------- | 809| component | 表示指向OH_NativeXComponent实例的指针。 | 810| keyEvent | 表示指向当前按键事件指针的指针。 | 811 812**返回:** 813 814返回执行的状态代码。 815 816**起始版本:** 817 81810 819 820 821### OH_NativeXComponent_GetKeyEventAction() 822 823``` 824int32_t OH_NativeXComponent_GetKeyEventAction (OH_NativeXComponent_KeyEvent * keyEvent, OH_NativeXComponent_KeyAction * action ) 825``` 826 827**描述:** 828 829获取传入按键事件的动作。 830 831**参数:** 832 833| 名称 | 描述 | 834| -------- | -------------------------------------- | 835| keyEvent | 表示指向OH_NativeXComponent_KeyEvent实例的指针。 | 836| action | 表示指向按键事件动作的指针。 | 837 838**返回:** 839 840返回执行的状态代码。 841 842**起始版本:** 843 84410 845 846 847### OH_NativeXComponent_GetKeyEventCode() 848 849``` 850int32_t OH_NativeXComponent_GetKeyEventCode (OH_NativeXComponent_KeyEvent * keyEvent, OH_NativeXComponent_KeyCode * code ) 851``` 852 853**描述:** 854 855获取传入按键事件的按键码。 856 857**参数:** 858 859| 名称 | 描述 | 860| -------- | -------------------------------------- | 861| keyEvent | 表示指向OH_NativeXComponent_KeyEvent实例的指针。 | 862| code | 表示指向按键事件按键码的指针。 | 863 864**返回:** 865 866返回执行的状态代码。 867 868**起始版本:** 869 87010 871 872 873### OH_NativeXComponent_GetKeyEventDeviceId() 874 875``` 876int32_t OH_NativeXComponent_GetKeyEventDeviceId (OH_NativeXComponent_KeyEvent * keyEvent, int64_t * deviceId ) 877``` 878 879**描述:** 880 881获取传入按键事件的设备id。 882 883**参数:** 884 885| 名称 | 描述 | 886| -------- | -------------------------------------- | 887| keyEvent | 表示指向OH_NativeXComponent_KeyEvent实例的指针。 | 888| deviceId | 表示指向按键事件设备id的指针。 | 889 890**返回:** 891 892返回执行的状态代码。 893 894**起始版本:** 895 89610 897 898 899### OH_NativeXComponent_GetKeyEventSourceType() 900 901``` 902int32_t OH_NativeXComponent_GetKeyEventSourceType (OH_NativeXComponent_KeyEvent * keyEvent, OH_NativeXComponent_EventSourceType * sourceType ) 903``` 904 905**描述:** 906 907获取传入按键事件的事件源类型。 908 909**参数:** 910 911| 名称 | 描述 | 912| ---------- | -------------------------------------- | 913| keyEvent | 表示指向OH_NativeXComponent_KeyEvent实例的指针。 | 914| sourceType | 表示指向按键事件事件源类型的指针。 | 915 916**返回:** 917 918返回执行的状态代码。 919 920**起始版本:** 921 92210 923 924 925### OH_NativeXComponent_GetKeyEventTimeStamp() 926 927``` 928int32_t OH_NativeXComponent_GetKeyEventTimeStamp (OH_NativeXComponent_KeyEvent * keyEvent, int64_t * timeStamp ) 929``` 930 931**描述:** 932 933获取传入按键事件的时间戳。 934 935**参数:** 936 937| 名称 | 描述 | 938| --------- | -------------------------------------- | 939| keyEvent | 表示指向OH_NativeXComponent_KeyEvent实例的指针。 | 940| timeStamp | 表示指向按键事件时间戳的指针。 | 941 942**返回:** 943 944返回执行的状态代码。 945 946**起始版本:** 947 94810 949 950 951### OH_NativeXComponent_GetMouseEvent() 952 953``` 954int32_t OH_NativeXComponent_GetMouseEvent (OH_NativeXComponent * component, const void * window, OH_NativeXComponent_MouseEvent * mouseEvent ) 955``` 956 957**描述:** 958 959获取ArkUI XComponent调度的鼠标事件 960 961**参数:** 962 963| 名称 | 描述 | 964| ---------- | ----------------------------- | 965| component | 表示指向OH_NativeXComponent实例的指针。 | 966| window | 表示NativeWindow句柄 | 967| mouseEvent | 指示指向当前鼠标事件的指针。 | 968 969**返回:** 970 971返回执行的状态代码。 972 973**起始版本:** 974 9759 976 977### OH_NativeXComponent_GetNativeXComponent() 978 979``` 980OH_NativeXComponent* OH_NativeXComponent_GetNativeXComponent (ArkUI_NodeHandle node) 981``` 982**描述:** 983 984基于Native接口创建的组件实例获取OH_NativeXComponent类型的指针。 985 986**起始版本:** 12 987 988**参数:** 989 990| 名称 | 描述 | 991| -------- | -------- | 992| node | 指向Native接口创建的组件实例的指针。 | 993 994**返回:** 995 996表示指向OH_NativeXComponent实例的指针。 997 998 999### OH_NativeXComponent_GetTouchEvent() 1000 1001``` 1002int32_t OH_NativeXComponent_GetTouchEvent (OH_NativeXComponent * component, const void * window, OH_NativeXComponent_TouchEvent * touchEvent ) 1003``` 1004 1005**描述:** 1006 1007获取ArkUI XComponent调度的触摸事件。 1008 1009**参数:** 1010 1011| 名称 | 描述 | 1012| ---------- | ----------------------------- | 1013| component | 表示指向OH_NativeXComponent实例的指针。 | 1014| window | 表示NativeWindow句柄。 | 1015| touchEvent | 指示指向当前触摸事件的指针。 | 1016 1017**返回:** 1018 1019返回执行的状态代码。 1020 1021**起始版本:** 1022 10238 1024 1025 1026### OH_NativeXComponent_GetTouchPointTiltX() 1027 1028``` 1029int32_t OH_NativeXComponent_GetTouchPointTiltX (OH_NativeXComponent * component, uint32_t pointIndex, float * tiltX ) 1030``` 1031 1032**描述:** 1033 1034获取ArkUI XComponent触摸点倾斜与X轴角度。 1035 1036**参数:** 1037 1038| 名称 | 描述 | 1039| ---------- | ----------------------------- | 1040| component | 表示指向OH_NativeXComponent实例的指针。 | 1041| pointIndex | 表示触摸点的指针索引。 | 1042| tiltX | 表示指向X倾斜度的指针。 | 1043 1044**返回:** 1045 1046返回执行的状态代码。 1047 1048**起始版本:** 1049 10509 1051 1052 1053### OH_NativeXComponent_GetTouchPointTiltY() 1054 1055``` 1056int32_t OH_NativeXComponent_GetTouchPointTiltY (OH_NativeXComponent * component, uint32_t pointIndex, float * tiltY ) 1057``` 1058 1059**描述:** 1060 1061获取ArkUI XComponent触摸点倾斜与Y轴角度。 1062 1063**参数:** 1064 1065| 名称 | 描述 | 1066| ---------- | ----------------------------- | 1067| component | 表示指向OH_NativeXComponent实例的指针。 | 1068| pointIndex | 表示触摸点的指针索引。 | 1069| tiltY | 表示指向Y倾斜度的指针。 | 1070 1071**返回:** 1072 1073返回执行的状态代码。 1074 1075**起始版本:** 1076 10779 1078 1079 1080### OH_NativeXComponent_GetTouchPointWindowX() 1081 1082``` 1083int32_t OH_NativeXComponent_GetTouchPointWindowX(OH_NativeXComponent * component, uint32_t pointIndex, float * windowX ) 1084``` 1085 1086**描述:** 1087 1088获取ArkUI XComponent触摸点相对于应用窗口左上角的X坐标。 1089 1090**参数:** 1091 1092| 名称 | 描述 | 1093| ---------- | ----------------------------- | 1094| component | 表示指向OH_NativeXComponent实例的指针。 | 1095| pointIndex | 表示触摸点的指针索引。 | 1096| windowX | 表示指向触摸点相对于应用窗口左上角的X坐标的指针。 | 1097 1098**返回:** 1099 1100返回执行的状态代码。 1101 1102**起始版本:** 1103 110412 1105 1106 1107### OH_NativeXComponent_GetTouchPointWindowY() 1108 1109``` 1110int32_t OH_NativeXComponent_GetTouchPointWindowY(OH_NativeXComponent * component, uint32_t pointIndex, float * windowY ) 1111``` 1112 1113**描述:** 1114 1115获取ArkUI XComponent触摸点相对于应用窗口左上角的Y坐标。 1116 1117**参数:** 1118 1119| 名称 | 描述 | 1120| ---------- | ----------------------------- | 1121| component | 表示指向OH_NativeXComponent实例的指针。 | 1122| pointIndex | 表示触摸点的指针索引。 | 1123| windowY | 表示指向触摸点相对于应用窗口左上角的Y坐标的指针。 | 1124 1125**返回:** 1126 1127返回执行的状态代码。 1128 1129**起始版本:** 1130 113112 1132 1133 1134### OH_NativeXComponent_GetTouchPointDisplayX() 1135 1136``` 1137int32_t OH_NativeXComponent_GetTouchPointDisplayX(OH_NativeXComponent * component, uint32_t pointIndex, float * displayX ) 1138``` 1139 1140**描述:** 1141 1142获取ArkUI XComponent触摸点相对于应用所在屏幕左上角的X坐标。 1143 1144**参数:** 1145 1146| 名称 | 描述 | 1147| ---------- | ----------------------------- | 1148| component | 表示指向OH_NativeXComponent实例的指针。 | 1149| pointIndex | 表示触摸点的指针索引。 | 1150| displayX | 表示指向触摸点相对于应用所在屏幕左上角的X坐标的指针。 | 1151 1152**返回:** 1153 1154返回执行的状态代码。 1155 1156**起始版本:** 1157 115812 1159 1160 1161### OH_NativeXComponent_GetTouchPointDisplayY() 1162 1163``` 1164int32_t OH_NativeXComponent_GetTouchPointDisplayY(OH_NativeXComponent * component, uint32_t pointIndex, float * displayY ) 1165``` 1166 1167**描述:** 1168 1169获取ArkUI XComponent触摸点相对于应用所在屏幕左上角的Y坐标。 1170 1171**参数:** 1172 1173| 名称 | 描述 | 1174| ---------- | ----------------------------- | 1175| component | 表示指向OH_NativeXComponent实例的指针。 | 1176| pointIndex | 表示触摸点的指针索引。 | 1177| displayY | 表示指向触摸点相对于应用所在屏幕左上角的Y坐标的指针。 | 1178 1179**返回:** 1180 1181返回执行的状态代码。 1182 1183**起始版本:** 1184 118512 1186 1187 1188### OH_NativeXComponent_GetTouchPointToolType() 1189 1190``` 1191int32_t OH_NativeXComponent_GetTouchPointToolType (OH_NativeXComponent * component, uint32_t pointIndex, OH_NativeXComponent_TouchPointToolType * toolType ) 1192``` 1193 1194**描述:** 1195 1196获取ArkUI XComponent触摸点工具类型。 1197 1198**参数:** 1199 1200| 名称 | 描述 | 1201| ---------- | ----------------------------- | 1202| component | 表示指向OH_NativeXComponent实例的指针。 | 1203| pointIndex | 表示触摸点的指针索引。 | 1204| toolType | 表示指向工具类型的指针。 | 1205 1206**返回:** 1207 1208返回执行的状态代码。 1209 1210**起始版本:** 1211 12129 1213 1214 1215### OH_NativeXComponent_GetXComponentId() 1216 1217``` 1218int32_t OH_NativeXComponent_GetXComponentId (OH_NativeXComponent * component, char * id, uint64_t * size ) 1219``` 1220 1221**描述:** 1222 1223获取ArkUI XComponent的id。 1224 1225**参数:** 1226 1227| 名称 | 描述 | 1228| --------- | ------------------------------------------------------------ | 1229| component | 表示指向OH_NativeXComponent实例的指针。 | 1230| id | 指示用于保存此OH_NativeXComponent实例的ID的字符缓冲区。 请注意,空终止符将附加到字符缓冲区,因此字符缓冲区的大小应至少比真实id长度大一个单位。 建议字符缓冲区的大小为[OH_XCOMPONENT_ID_LEN_MAX + 1]。 | 1231| size | 指示指向id长度的指针,用于接收id的长度信息。 | 1232 1233**返回:** 1234 1235返回执行的状态代码。 1236 1237**起始版本:** 1238 12398 1240 1241 1242### OH_NativeXComponent_GetXComponentOffset() 1243 1244``` 1245int32_t OH_NativeXComponent_GetXComponentOffset (OH_NativeXComponent * component, const void * window, double * x, double * y ) 1246``` 1247 1248**描述:** 1249 1250获取ArkUI XComponent持有的surface相对其父组件左顶点的偏移量。 1251 1252**参数:** 1253 1254| 名称 | 描述 | 1255| --------- | ----------------------------- | 1256| component | 表示指向OH_NativeXComponent实例的指针。 | 1257| window | 表示NativeWindow句柄。 | 1258| x | 指示指向当前surface相对于XComponent父组件左顶点x坐标的指针。 | 1259| y | 指示指向当前surface相对于XComponent父组件左顶点y坐标的指针。 | 1260 1261**返回:** 1262 1263返回执行的状态代码。 1264 1265**起始版本:** 1266 12678 1268 1269 1270### OH_NativeXComponent_GetXComponentSize() 1271 1272``` 1273int32_t OH_NativeXComponent_GetXComponentSize (OH_NativeXComponent * component, const void * window, uint64_t * width, uint64_t * height ) 1274``` 1275 1276**描述:** 1277 1278获取ArkUI XComponent持有的surface的大小。 1279 1280**参数:** 1281 1282| 名称 | 描述 | 1283| --------- | ----------------------------- | 1284| component | 表示指向OH_NativeXComponent实例的指针。 | 1285| window | 表示NativeWindow句柄。 | 1286| width | 指示指向当前surface宽度的指针。 | 1287| height | 指示指向当前surface高度的指针。 | 1288 1289**返回:** 1290 1291返回执行的状态代码。 1292 1293**起始版本:** 1294 12958 1296 1297 1298### OH_NativeXComponent_RegisterBlurEventCallback() 1299 1300``` 1301int32_t OH_NativeXComponent_RegisterBlurEventCallback (OH_NativeXComponent * component, void(*callback)(OH_NativeXComponent *component, void *window)) 1302``` 1303 1304**描述:** 1305 1306为此OH_NativeXComponent实例注册失焦事件回调。 1307 1308**参数:** 1309 1310| 名称 | 描述 | 1311| --------- | ----------------------------- | 1312| component | 表示指向OH_NativeXComponent实例的指针。 | 1313| callback | 指示指向失焦事件回调的指针。 | 1314 1315**返回:** 1316 1317返回执行的状态代码。 1318 1319**起始版本:** 1320 132110 1322 1323 1324### OH_NativeXComponent_RegisterCallback() 1325 1326``` 1327int32_t OH_NativeXComponent_RegisterCallback (OH_NativeXComponent * component, OH_NativeXComponent_Callback * callback ) 1328``` 1329 1330**描述:** 1331 1332为此OH_NativeXComponent实例注册回调。 1333 1334**参数:** 1335 1336| 名称 | 描述 | 1337| --------- | ----------------------------- | 1338| component | 表示指向OH_NativeXComponent实例的指针。 | 1339| callback | 指示指向surface生命周期和触摸事件回调的指针。 | 1340 1341**返回:** 1342 1343返回执行的状态代码。 1344 1345**起始版本:** 1346 13478 1348 1349 1350### OH_NativeXComponent_RegisterFocusEventCallback() 1351 1352``` 1353int32_t OH_NativeXComponent_RegisterFocusEventCallback (OH_NativeXComponent * component, void(*callback)(OH_NativeXComponent *component, void *window)) 1354``` 1355 1356**描述:** 1357 1358为此OH_NativeXComponent实例注册获焦事件回调。 1359 1360**参数:** 1361 1362| 名称 | 描述 | 1363| --------- | ----------------------------- | 1364| component | 表示指向OH_NativeXComponent实例的指针。 | 1365| callback | 指示指向获焦事件回调的指针。 | 1366 1367**返回:** 1368 1369返回执行的状态代码。 1370 1371**起始版本:** 1372 137310 1374 1375 1376### OH_NativeXComponent_RegisterKeyEventCallback() 1377 1378``` 1379int32_t OH_NativeXComponent_RegisterKeyEventCallback (OH_NativeXComponent * component, void(*callback)(OH_NativeXComponent *component, void *window)) 1380``` 1381 1382**描述:** 1383 1384为此OH_NativeXComponent实例注册按键事件回调。 1385 1386**参数:** 1387 1388| 名称 | 描述 | 1389| --------- | ----------------------------- | 1390| component | 表示指向OH_NativeXComponent实例的指针。 | 1391| callback | 指示指向按键事件回调的指针。 | 1392 1393**返回:** 1394 1395返回执行的状态代码。 1396 1397**起始版本:** 1398 139910 1400 1401 1402### OH_NativeXComponent_RegisterKeyEventCallbackWithResult() 1403 1404``` 1405int32_t OH_NativeXComponent_RegisterKeyEventCallbackWithResult (OH_NativeXComponent * component, bool(*callback)(OH_NativeXComponent *component, void *window)) 1406``` 1407 1408**描述:** 1409 1410为此OH_NativeXComponent实例注册带有返回值的按键事件回调。通过此接口注册的按键事件回调都必须返回一个结果,即true或false。当返回值为true时,该事件将不会继续分发;当返回值为false时,该事件将按照事件处理流程继续分发。 1411 1412**参数:** 1413 1414| 名称 | 描述 | 1415| --------- | ----------------------------- | 1416| component | 表示指向OH_NativeXComponent实例的指针。 | 1417| callback | 指示指向按键事件回调的指针。 | 1418 1419**返回:** 1420 1421返回执行的状态代码。 1422 1423**起始版本:** 1424 142514 1426 1427 1428### OH_NativeXComponent_RegisterMouseEventCallback() 1429 1430``` 1431int32_t OH_NativeXComponent_RegisterMouseEventCallback (OH_NativeXComponent * component, OH_NativeXComponent_MouseEvent_Callback * callback ) 1432``` 1433 1434**描述:** 1435 1436为此OH_NativeXComponent实例注册鼠标事件回调。 1437 1438**参数:** 1439 1440| 名称 | 描述 | 1441| --------- | ----------------------------- | 1442| component | 表示指向OH_NativeXComponent实例的指针。 | 1443| callback | 指示指向鼠标事件回调的指针。 | 1444 1445**返回:** 1446 1447返回执行的状态代码。 1448 1449**起始版本:** 1450 14519 1452 1453### OH_NativeXComponent_RegisterOnFrameCallback() 1454 1455``` 1456int32_t OH_NativeXComponent_RegisterOnFrameCallback (OH_NativeXComponent* component, void (*callback)(OH_NativeXComponent *component, uint64_t timestamp, uint64_t targetTimestamp)) 1457``` 1458**描述:** 1459 1460为此OH_NativeXComponent实例注册显示更新回调,并使能每帧回调此函数。 1461 1462**参数:** 1463 1464| 名称 | 描述 | 1465| -------- | -------- | 1466| component | 表示指向OH_NativeXComponent实例的指针。 | 1467| callback | 指示指向显示更新回调的指针。 | 1468| timestamp | 当前帧到达的时间(单位:纳秒)。 | 1469| targetTimestamp | 下一帧预期到达的时间(单位:纳秒)。 | 1470 1471**返回:** 1472 1473返回执行的状态代码。 1474 1475**起始版本:** 1476 147711 1478 1479### OH_NativeXComponent_RegisterOnTouchInterceptCallback() 1480 1481``` 1482int32_t OH_NativeXComponent_RegisterOnTouchInterceptCallback (OH_NativeXComponent * component, HitTestMode(*callback)(OH_NativeXComponent *component, ArkUI_UIInputEvent *event)) 1483``` 1484**描述:** 1485 1486为此OH_NativeXComponent实例注册自定义事件拦截回调,并使能在做触摸测试时回调此函数。 1487 1488**起始版本:** 12 1489 1490**参数:** 1491 1492| 名称 | 描述 | 1493| -------- | -------- | 1494| component | 表示指向OH_NativeXComponent实例的指针。 | 1495| callback | 指示指向自定义事件拦截回调的指针。 | 1496 1497**返回:** 1498 14990 - 成功。 401 - 参数异常。 1500 1501### OH_NativeXComponent_RegisterUIInputEventCallback() 1502 1503``` 1504int32_t OH_NativeXComponent_RegisterUIInputEventCallback (OH_NativeXComponent * component, void(*callback)(OH_NativeXComponent *component, ArkUI_UIInputEvent *event, ArkUI_UIInputEvent_Type type), ArkUI_UIInputEvent_Type type ) 1505``` 1506**描述:** 1507 1508为此OH_NativeXComponent实例注册UI输入事件回调,并使能收到UI输入事件时回调此函数。 1509 1510**起始版本:** 12 1511 1512**参数:** 1513 1514| 名称 | 描述 | 1515| -------- | -------- | 1516| component | 表示指向OH_NativeXComponent实例的指针。 | 1517| callback | 指示指向UI输入事件回调的指针。 | 1518| type | 指示当前UI输入事件的类型。 | 1519 1520**返回:** 1521 1522返回执行的状态代码。 1523 1524### OH_NativeXComponent_SetExpectedFrameRateRange() 1525 1526``` 1527int32_t OH_NativeXComponent_SetExpectedFrameRateRange (OH_NativeXComponent * component, OH_NativeXComponent_ExpectedRateRange * range ) 1528``` 1529**描述:** 1530 1531设置期望帧率范围。 1532 1533**参数:** 1534 1535| 名称 | 描述 | 1536| -------- | -------- | 1537| component | 表示指向OH_NativeXComponent实例的指针。 | 1538| range | 表示指向期望帧率范围的指针。 | 1539 1540**返回:** 1541 1542返回执行的状态代码。 1543 1544**起始版本:** 1545 154611 1547 1548 1549### OH_NativeXComponent_UnregisterOnFrameCallback() 1550 1551``` 1552int32_t OH_NativeXComponent_UnregisterOnFrameCallback (OH_NativeXComponent * component) 1553``` 1554**描述:** 1555 1556为此OH_NativeXComponent实例取消注册回调函数,并关闭每帧回调此函数。 1557 1558**参数:** 1559 1560| 名称 | 描述 | 1561| -------- | -------- | 1562| component | 表示指向OH_NativeXComponent实例的指针。 | 1563 1564**返回:** 1565 1566返回执行的状态代码。 1567 1568**起始版本:** 1569 157011 1571 1572### OH_NativeXComponent_SetNeedSoftKeyboard() 1573 1574``` 1575int32_t OH_NativeXComponent_SetNeedSoftKeyboard(OH_NativeXComponent* component, bool isNeedSoftKeyboard) 1576``` 1577 1578**描述:** 1579 1580为此OH_NativeXComponent实例设置是否需要软键盘。 1581 1582**参数:** 1583 1584| 名称 | 描述 | 1585| ------------------ | --------------------------------------------- | 1586| component | 表示指向OH_NativeXComponent实例的指针。 | 1587| isNeedSoftKeyboard | 表示此OH_NativeXComponent实例是否需要软键盘。 | 1588 1589**返回:** 1590 1591返回执行的状态代码。 1592 1593**起始版本:** 1594 159512 1596 1597### OH_NativeXComponent_RegisterSurfaceShowCallback() 1598 1599``` 1600int32_t OH_NativeXComponent_RegisterSurfaceShowCallback (OH_NativeXComponent * component, void(*callback)(OH_NativeXComponent *component, void *window)) 1601``` 1602 1603**描述:** 1604 1605为此OH_NativeXComponent实例注册surface显示回调,该回调在应用从后台返回前台后触发。 1606 1607**参数:** 1608 1609| 名称 | 描述 | 1610| --------- | ----------------------------- | 1611| component | 表示指向OH_NativeXComponent实例的指针。 | 1612| callback | 指示指向surface显示回调的指针。 | 1613 1614**返回:** 1615 1616返回执行的状态代码。 1617 1618**起始版本:** 1619 162012 1621 1622### OH_NativeXComponent_RegisterSurfaceHideCallback() 1623 1624``` 1625int32_t OH_NativeXComponent_RegisterSurfaceHideCallback (OH_NativeXComponent * component, void(*callback)(OH_NativeXComponent *component, void *window)) 1626``` 1627 1628**描述:** 1629 1630为此OH_NativeXComponent实例注册surface隐藏回调,该回调在应用从前台来到后台后触发。 1631 1632**参数:** 1633 1634| 名称 | 描述 | 1635| --------- | ----------------------------- | 1636| component | 表示指向OH_NativeXComponent实例的指针。 | 1637| callback | 指示指向surface隐藏回调的指针。 | 1638 1639**返回:** 1640 1641返回执行的状态代码。 1642 1643**起始版本:** 1644 164512 1646 1647### OH_NativeXComponent_GetTouchEventSourceType() 1648 1649``` 1650int32_t OH_NativeXComponent_GetTouchEventSourceType (OH_NativeXComponent* component, int32_t pointId, OH_NativeXComponent_EventSourceType* sourceType); 1651``` 1652 1653**描述:** 1654 1655获取ArkUI XComponent触摸事件的输入设备类型。 1656 1657**参数:** 1658 1659| 名称 | 描述 | 1660| --------- | ----------------------------- | 1661| component | 表示指向OH_NativeXComponent实例的指针。 | 1662| pointId | 表示触摸点的id。<br/>**说明:**<br/>仅当传入的id为触发该touch事件的触点id时,可正确返回输入设备类型,否则返回OH_NATIVEXCOMPONENT_RESULT_BAD_PARAMETER。 | 1663| sourceType | 指示指向返回设备类型的指针。 | 1664 1665**返回:** 1666 1667OH_NATIVEXCOMPONENT_RESULT_SUCCESS - 成功。 1668 1669OH_NATIVEXCOMPONENT_RESULT_BAD_PARAMETER - 参数异常。 1670 1671OH_NATIVEXCOMPONENT_RESULT_FAILED - 其他错误。 1672 1673**起始版本:** 1674 167512 1676 1677### OH_NativeXComponent_GetNativeAccessibilityProvider() 1678 1679``` 1680int32_t OH_NativeXComponent_GetNativeAccessibilityProvider( 1681 OH_NativeXComponent* component, ArkUI_AccessibilityProvider** handle); 1682``` 1683 1684**描述:** 1685 1686获取ArkUI XComponent无障碍接入句柄指针。 1687 1688**参数:** 1689 1690| 名称 | 描述 | 1691| --------- | --------------------------------------- | 1692| component | 表示指向OH_NativeXComponent实例的指针。 | 1693| handle | 返回无障碍接入句柄指针。 | 1694 1695**返回:** 1696 1697OH_NATIVEXCOMPONENT_RESULT_SUCCESS - 成功。 1698 1699OH_NATIVEXCOMPONENT_RESULT_BAD_PARAMETER - 参数异常。 1700 1701OH_NATIVEXCOMPONENT_RESULT_FAILED - 其他错误。 1702 1703**起始版本:** 1704 170513 1706 1707### OH_ArkUI_XComponent_StartImageAnalyzer() 1708 1709``` 1710int32_t OH_ArkUI_XComponent_StartImageAnalyzer(ArkUI_NodeHandle node, void* userData, 1711 void (*callback)(ArkUI_NodeHandle node, ArkUI_XComponent_ImageAnalyzerState statusCode, void* userData)); 1712``` 1713 1714**描述:** 1715 1716为此由[ArkUI NDK接口](../../ui/ndk-access-the-arkts-page.md)创建的XComponent实例开始图像AI分析,使用前需先使能图像AI分析能力。该方法调用时,将截取调用时刻的画面帧进行分析,使用时需注意启动分析的时机,避免出现画面和分析内容不一致的情况。图像AI分析状态刷新时,将会触发传入的回调函数。 1717 1718**参数:** 1719 1720| 名称 | 描述 | 1721| --------- | --------------------------------------- | 1722| node | 表示指向[ArkUI NDK接口](../../ui/ndk-access-the-arkts-page.md)创建的XComponent组件实例的指针。 | 1723| userData | 表示开发者需要在回调函数执行时获取的数据的指针。 | 1724|callback| 表示图像AI分析状态刷新时触发的回调函数。| 1725|statusCode|回调函数的入参之一,表示当前的图像分析状态。| 1726 1727> **说明:** 1728> 1729> 该接口发起的图像AI分析过程为异步执行,接口返回后,并不代表图像AI分析已经产生分析内容。 1730 1731**返回:** 1732 1733ARKUI_ERROR_CODE_NO_ERROR - 成功。 1734 1735ARKUI_ERROR_CODE_PARAM_INVALID - 参数异常。 1736 1737**起始版本:** 1738 173918 1740 1741### OH_ArkUI_XComponent_StopImageAnalyzer() 1742 1743``` 1744int32_t OH_ArkUI_XComponent_StopImageAnalyzer(ArkUI_NodeHandle node); 1745``` 1746 1747**描述:** 1748 1749为此由[ArkUI NDK接口](../../ui/ndk-access-the-arkts-page.md)创建的XComponent实例停止图像AI分析。停止图像AI分析功能后,图像AI分析展示的内容将被销毁。 1750 1751**参数:** 1752 1753| 名称 | 描述 | 1754| --------- | --------------------------------------- | 1755| node | 表示指向[ArkUI NDK接口](../../ui/ndk-access-the-arkts-page.md)创建的XComponent组件实例的指针。 | 1756 1757**返回:** 1758 1759ARKUI_ERROR_CODE_NO_ERROR - 成功。 1760 1761ARKUI_ERROR_CODE_PARAM_INVALID - 参数异常。 1762 1763**起始版本:** 1764 176518 1766 1767 1768<!-- --> 1769 1770## 变量说明 1771 1772 1773### OH_XCOMPONENT_ID_LEN_MAX 1774 1775``` 1776const uint32_t OH_XCOMPONENT_ID_LEN_MAX = 128 1777``` 1778 1779 1780**描述:** 1781 1782 1783ArkUI XComponent的id最大长度。 1784 1785 1786**起始版本:** 1787 1788 17898 1790 1791 1792### OH_MAX_TOUCH_POINTS_NUMBER 1793 1794``` 1795const uint32_t OH_MAX_TOUCH_POINTS_NUMBER = 10 1796``` 1797 1798**描述:** 1799 1800触摸事件中的可识别的触摸点个数最大值。 1801 1802**起始版本:** 1803 18048 1805 1806 1807### action 1808 1809``` 1810OH_NativeXComponent_MouseEventAction OH_NativeXComponent_MouseEvent::action 1811``` 1812 1813**描述:** 1814 1815当前鼠标事件动作。 1816 1817**起始版本:** 1818 18198 1820 1821 1822### button 1823 1824``` 1825OH_NativeXComponent_MouseEventButton OH_NativeXComponent_MouseEvent::button 1826``` 1827 1828**描述:** 1829 1830鼠标事件按键。 1831 1832**起始版本:** 1833 18348 1835 1836 1837### deviceId 1838 1839``` 1840int64_t OH_NativeXComponent_TouchEvent::deviceId = 0 1841``` 1842 1843**描述:** 1844 1845产生当前触摸事件的设备的ID。 1846 1847**起始版本:** 1848 18498 1850 1851 1852### DispatchHoverEvent 1853 1854``` 1855void(* OH_NativeXComponent_MouseEvent_Callback::DispatchHoverEvent) (OH_NativeXComponent *component, bool isHover) 1856``` 1857 1858**描述:** 1859 1860当悬停事件被触发时调用。 1861 1862**起始版本:** 1863 18648 1865 1866 1867### DispatchMouseEvent 1868 1869``` 1870void(* OH_NativeXComponent_MouseEvent_Callback::DispatchMouseEvent) (OH_NativeXComponent *component, void *window) 1871``` 1872 1873**描述:** 1874 1875当鼠标事件被触发时调用。 1876 1877**参数:** 1878 1879| 名称 | 描述 | 1880| --------- | ----------------------------- | 1881| component | 表示指向OH_NativeXComponent实例的指针。 | 1882| window | 表示NatievWindow句柄。 | 1883 1884**起始版本:** 1885 18868 1887 1888 1889### DispatchTouchEvent 1890 1891``` 1892void(* OH_NativeXComponent_Callback::DispatchTouchEvent) (OH_NativeXComponent *component, void *window) 1893``` 1894 1895**描述:** 1896 1897当触摸事件被触发时调用。 1898 1899**起始版本:** 1900 19018 1902 1903 1904### force [1/2] 1905 1906``` 1907float OH_NativeXComponent_TouchPoint::force = 0.0 1908``` 1909 1910**描述:** 1911 1912当前触摸事件的压力。 1913 1914**起始版本:** 1915 19168 1917 1918 1919### force [2/2] 1920 1921``` 1922float OH_NativeXComponent_TouchEvent::force = 0.0 1923``` 1924 1925**描述:** 1926 1927当前触摸事件的压力。 1928 1929**起始版本:** 1930 19318 1932 1933 1934### id [1/2] 1935 1936``` 1937int32_t OH_NativeXComponent_TouchPoint::id = 0 1938``` 1939 1940**描述:** 1941 1942手指的唯一标识符。 1943 1944**起始版本:** 1945 19468 1947 1948 1949### id [2/2] 1950 1951``` 1952int32_t OH_NativeXComponent_TouchEvent::id = 0 1953``` 1954 1955**描述:** 1956 1957手指的唯一标识符。 1958 1959**起始版本:** 1960 19618 1962 1963 1964### isPressed 1965 1966``` 1967bool OH_NativeXComponent_TouchPoint::isPressed = false 1968``` 1969 1970**描述:** 1971 1972当前点是否被按下。 1973 1974**起始版本:** 1975 19768 1977 1978 1979### numPoints 1980 1981``` 1982uint32_t OH_NativeXComponent_TouchEvent::numPoints = 0 1983``` 1984 1985**描述:** 1986 1987当前接触点的数量。 1988 1989**起始版本:** 1990 19918 1992 1993 1994### OnSurfaceChanged 1995 1996``` 1997void(* OH_NativeXComponent_Callback::OnSurfaceChanged) (OH_NativeXComponent *component, void *window) 1998``` 1999 2000**描述:** 2001 2002当surface改变时调用。 2003 2004**参数:** 2005 2006| 名称 | 描述 | 2007| --------- | ----------------------------- | 2008| component | 表示指向OH_NativeXComponent实例的指针。 | 2009| window | 表示NatievWindow句柄。 | 2010 2011**起始版本:** 2012 20138 2014 2015 2016### OnSurfaceCreated 2017 2018``` 2019void(* OH_NativeXComponent_Callback::OnSurfaceCreated) (OH_NativeXComponent *component, void *window) 2020``` 2021 2022**描述:** 2023 2024创建surface时调用。 2025 2026**参数:** 2027 2028| 名称 | 描述 | 2029| --------- | ----------------------------- | 2030| component | 表示指向OH_NativeXComponent实例的指针。 | 2031| window | 表示NatievWindow句柄。 | 2032 2033**起始版本:** 2034 20358 2036 2037 2038### OnSurfaceDestroyed 2039 2040``` 2041void(* OH_NativeXComponent_Callback::OnSurfaceDestroyed) (OH_NativeXComponent *component, void *window) 2042``` 2043 2044**描述:** 2045 2046当surface被销毁时调用。 2047 2048**参数:** 2049 2050| 名称 | 描述 | 2051| --------- | ----------------------------- | 2052| component | 表示指向OH_NativeXComponent实例的指针。 | 2053| window | 表示NatievWindow句柄。 | 2054 2055**起始版本:** 2056 20578 2058 2059 2060### screenX [1/3] 2061 2062``` 2063float OH_NativeXComponent_TouchPoint::screenX = 0.0 2064``` 2065 2066**描述:** 2067 2068触摸点相对于XComponent所在应用窗口左上角的x坐标。 2069 2070**起始版本:** 2071 20728 2073 2074 2075### screenX [2/3] 2076 2077``` 2078float OH_NativeXComponent_TouchEvent::screenX = 0.0 2079``` 2080 2081**描述:** 2082 2083触摸点相对于所在应用窗口左上角的x坐标。 2084 2085**起始版本:** 2086 20878 2088 2089 2090### screenX [3/3] 2091 2092``` 2093float OH_NativeXComponent_MouseEvent::screenX 2094``` 2095 2096**描述:** 2097 2098点击触点相对于所在应用屏幕左上角的x轴坐标。 2099 2100**起始版本:** 2101 21028 2103 2104 2105### screenY [1/3] 2106 2107``` 2108float OH_NativeXComponent_TouchPoint::screenY = 0.0 2109``` 2110 2111**描述:** 2112 2113触摸点相对于XComponent所在应用窗口左上角的y坐标。 2114 2115**起始版本:** 2116 21178 2118 2119 2120### screenY [2/3] 2121 2122``` 2123float OH_NativeXComponent_TouchEvent::screenY = 0.0 2124``` 2125 2126**描述:** 2127 2128触摸点相对于所在应用窗口左上角的y坐标。 2129 2130**起始版本:** 2131 21328 2133 2134 2135### screenY [3/3] 2136 2137``` 2138float OH_NativeXComponent_MouseEvent::screenY 2139``` 2140 2141**描述:** 2142 2143点击触点相对于所在应用屏幕左上角的y轴坐标。 2144 2145**起始版本:** 2146 21478 2148 2149 2150### size [1/2] 2151 2152``` 2153double OH_NativeXComponent_TouchPoint::size = 0.0 2154``` 2155 2156**描述:** 2157 2158指垫和屏幕之间的接触面积。 2159 2160**起始版本:** 2161 21628 2163 2164 2165### size [2/2] 2166 2167``` 2168double OH_NativeXComponent_TouchEvent::size = 0.0 2169``` 2170 2171**描述:** 2172 2173指垫和屏幕之间的接触面积。 2174 2175**起始版本:** 2176 21778 2178 2179 2180### timeStamp [1/2] 2181 2182``` 2183long long OH_NativeXComponent_TouchPoint::timeStamp = 0 2184``` 2185 2186**描述:** 2187 2188当前触摸事件的时间戳。 2189 2190**起始版本:** 2191 21928 2193 2194 2195### timeStamp [2/2] 2196 2197``` 2198long long OH_NativeXComponent_TouchEvent::timeStamp = 0 2199``` 2200 2201**描述:** 2202 2203当前触摸事件的时间戳。 2204 2205**起始版本:** 2206 22078 2208 2209 2210### timestamp 2211 2212``` 2213int64_t OH_NativeXComponent_MouseEvent::timestamp 2214``` 2215 2216**描述:** 2217 2218当前鼠标事件的时间戳。 2219 2220**起始版本:** 2221 22228 2223 2224 2225### touchPoints 2226 2227``` 2228OH_NativeXComponent_TouchPoint OH_NativeXComponent_TouchEvent::touchPoints[OH_MAX_TOUCH_POINTS_NUMBER] 2229``` 2230 2231**描述:** 2232 2233当前触摸点的数组。 2234 2235**起始版本:** 2236 22378 2238 2239 2240### type [1/2] 2241 2242``` 2243OH_NativeXComponent_TouchEventType OH_NativeXComponent_TouchPoint::type = OH_NativeXComponent_TouchEventType::OH_NATIVEXCOMPONENT_UNKNOWN 2244``` 2245 2246**描述:** 2247 2248触摸事件的触摸类型。 2249 2250**起始版本:** 2251 22528 2253 2254 2255### type [2/2] 2256 2257``` 2258OH_NativeXComponent_TouchEventType OH_NativeXComponent_TouchEvent::type = OH_NativeXComponent_TouchEventType::OH_NATIVEXCOMPONENT_UNKNOWN 2259``` 2260 2261**描述:** 2262 2263触摸事件的触摸类型。 2264 2265**起始版本:** 2266 22678 2268 2269 2270### x [1/3] 2271 2272``` 2273float OH_NativeXComponent_TouchPoint::x = 0.0 2274``` 2275 2276**描述:** 2277 2278触摸点相对于XComponent组件左边缘的x坐标。 2279 2280**起始版本:** 2281 22828 2283 2284 2285### x [2/3] 2286 2287``` 2288float OH_NativeXComponent_TouchEvent::x = 0.0 2289``` 2290 2291**描述:** 2292 2293触摸点相对于XComponent组件左边缘的x坐标。 2294 2295**起始版本:** 2296 22978 2298 2299 2300### x [3/3] 2301 2302``` 2303float OH_NativeXComponent_MouseEvent::x 2304``` 2305 2306**描述:** 2307 2308点击触点相对于当前组件左上角的x轴坐标。 2309 2310**起始版本:** 2311 23128 2313 2314 2315### y [1/3] 2316 2317``` 2318float OH_NativeXComponent_TouchPoint::y = 0.0 2319``` 2320 2321**描述:** 2322 2323触摸点相对于XComponent组件上边缘的y坐标。 2324 2325**起始版本:** 2326 23278 2328 2329 2330### y [2/3] 2331 2332``` 2333float OH_NativeXComponent_TouchEvent::y = 0.0 2334``` 2335 2336**描述:** 2337 2338触摸点相对于XComponent组件上边缘的y坐标。 2339 2340**起始版本:** 2341 23428 2343 2344 2345### y [3/3] 2346 2347``` 2348float OH_NativeXComponent_MouseEvent::y 2349``` 2350 2351**描述:** 2352 2353点击触点相对于当前组件左上角的y轴坐标。 2354 2355**起始版本:** 2356 23578 2358 2359### expected 2360 2361``` 2362int32_t OH_NativeXComponent_ExpectedRateRange::expected 2363``` 2364**描述:** 2365 2366期望帧率。 2367 2368**起始版本:** 2369 237011 2371 2372### max 2373 2374``` 2375int32_t OH_NativeXComponent_ExpectedRateRange::max 2376``` 2377**描述:** 2378 2379期望帧率范围最大值。 2380 2381**起始版本:** 2382 238311 2384 2385 2386### min 2387 2388``` 2389int32_t OH_NativeXComponent_ExpectedRateRange::min 2390``` 2391**描述:** 2392 2393期望帧率范围最小值。 2394 2395**起始版本:** 2396 239711 2398