1# WindowManager_NativeModule 2 3 4## 概述 5 6提供应用窗口的管理能力。 7 8**起始版本:** 12 9 10 11## 汇总 12 13 14### 文件 15 16| 名称 | 描述 | 17| -------- | -------- | 18| [oh_window_comm.h](oh__window__comm_8h.md) | 提供窗口的公共枚举、公共定义等。 | 19| [oh_window_event_filter.h](oh__window__event__filter_8h.md) | 定义窗口管理按键事件过滤的接口,当多模输入的事件经过窗口时,可以通过过滤接口拦截事件不让事件往下分发。 | 20 21 22### 类型定义 23 24| 名称 | 描述 | 25| -------- | -------- | 26| typedef enum [WindowManager_ErrorCode](#windowmanager_errorcode) [WindowManager_ErrorCode](#windowmanager_errorcode) | 窗口管理接口返回状态码枚举。 | 27| typedef bool(\*[OH_NativeWindowManager_KeyEventFilter](#oh_nativewindowmanager_keyeventfilter)) (Input_KeyEvent \*keyEvent) | 定义多模按键的过滤函数。 | 28 29 30### 枚举 31 32| 名称 | 描述 | 33| -------- | -------- | 34| [WindowManager_ErrorCode](#windowmanager_errorcode) { OK = 0, INVAILD_WINDOW_ID = 1000, SERVICE_ERROR = 2000 } | 窗口管理接口返回状态码枚举。 | 35 36 37### 函数 38 39| 名称 | 描述 | 40| -------- | -------- | 41| [WindowManager_ErrorCode](#windowmanager_errorcode) [OH_NativeWindowManager_RegisterKeyEventFilter](#oh_nativewindowmanager_registerkeyeventfilter) (int32_t windowId, [OH_NativeWindowManager_KeyEventFilter](#oh_nativewindowmanager_keyeventfilter) keyEventFilter) | 注册按键事件的过滤函数。 | 42| [WindowManager_ErrorCode](#windowmanager_errorcode) [OH_NativeWindowManager_UnregisterKeyEventFilter](#oh_nativewindowmanager_unregisterkeyeventfilter) (int32_t windowId) | 取消注册窗口的按键事件过滤函数。 | 43 44 45## 类型定义说明 46 47 48### OH_NativeWindowManager_KeyEventFilter 49 50``` 51typedef bool(* OH_NativeWindowManager_KeyEventFilter) (Input_KeyEvent *keyEvent) 52``` 53 54**描述** 55 56定义多模按键的过滤函数。 57 58**起始版本:** 12 59 60**参数:** 61 62| 名称 | 描述 | 63| -------- | -------- | 64| keyEvent | 多模按键事件,具体可见Input_KeyEvent,事件定义在oh_input_manager中。 | 65 66**返回:** 67 68返回是否过滤该事件,返回true窗口不再往下分发,返回false表示不拦截 69 70 71### WindowManager_ErrorCode 72 73``` 74typedef enum WindowManager_ErrorCode WindowManager_ErrorCode 75``` 76 77**描述** 78 79窗口管理接口返回状态码枚举。 80 81**起始版本:** 12 82 83 84## 枚举类型说明 85 86 87### WindowManager_ErrorCode 88 89``` 90enum WindowManager_ErrorCode 91``` 92 93**描述** 94 95窗口管理接口返回状态码枚举。 96 97**起始版本:** 12 98 99| 枚举值 | 描述 | 100| -------- | -------- | 101| OK | 成功。 | 102| INVAILD_WINDOW_ID | 非法窗口ID。 | 103| SERVICE_ERROR | 服务异常。 | 104 105 106## 函数说明 107 108 109### OH_NativeWindowManager_RegisterKeyEventFilter() 110 111``` 112WindowManager_ErrorCode OH_NativeWindowManager_RegisterKeyEventFilter (int32_t windowId, OH_NativeWindowManager_KeyEventFilter keyEventFilter ) 113``` 114 115**描述** 116 117注册按键事件的过滤函数。 118 119**起始版本:** 12 120 121**参数:** 122 123| 名称 | 描述 | 124| -------- | -------- | 125| windowId | 需要过滤按键事件的窗口ID。 | 126| keyEventFilter | 多模按键的过滤函数。 | 127 128**返回:** 129 130返回窗口管理接口的通用状态码,具体可见[WindowManager_ErrorCode](#windowmanager_errorcode)。 131 132 133### OH_NativeWindowManager_UnregisterKeyEventFilter() 134 135``` 136WindowManager_ErrorCode OH_NativeWindowManager_UnregisterKeyEventFilter (int32_t windowId) 137``` 138 139**描述** 140 141取消注册窗口的按键事件过滤函数。 142 143**起始版本:** 12 144 145**参数:** 146 147| 名称 | 描述 | 148| -------- | -------- | 149| windowId | 需要取消过滤按键事件的窗口ID。 | 150 151**返回:** 152 153返回窗口管理接口的通用状态码,具体可见[WindowManager_ErrorCode](#windowmanager_errorcode)。 154