--- title: UIX回调和上方菜单限制 summary: 订阅第三方 UIX,并将 X4 的共享图标行账户. section: ui kind: guide status: reference updated: 2026-10-27 tags: ["X4","modding","ui","hooks","and","top","menu"] sources: ["https://chemodun.github.io/x4/modding-support/ui-modding/uix-callbacks/","https://chemodun.github.io/x4/modding-support/ui-modding/top-menu-entries/","https://github.com/kuertee/x4-mod-ui-extensions"] --- ## UIX 是一个独立的依赖 特的UI扩展和HUD将发送点添加到标准菜单中. 它们 `menu.registerCallback` 和 `Helper.registerCallback` 尼拉尼尔尼尼里尼 UIX有自己的版本历史:在8.x中不需要9.x线上的. ## 订阅的例子 运行这个片段后 UIX 和 `MapMenu` 准备好: ```lua local menu = Helper.getMenu("MapMenu") if menu and type(menu.registerCallback) == "function" then menu.registerCallback("createPropertyOwned_on_start", function(config) DebugError("[WIKI] owned-property list is being built") end, "wiki_ui_demo") end ``` **什么时候和什么时候打印:** 在建立地图的所有物资清单时,达到这个发送点 `[WIKI] owned-property list is being built`. 其他没有按,没有改变属性. 它不宣称有 `config`, 处理者不会读到的信息. 在适当的清理阶段,只删除订阅: ```lua menu.deregisterCallback("createPropertyOwned_on_start", nil, "wiki_ui_demo") ``` 这是一个单独的清理步骤,而不是在注册后立即运行代码. 需要准备好 `menu` 通过这种方法来表现. ## 参数和回报值 单独阅读回调的论点,以及回调的方式. 事件可能会丢弃回报;过关可能选择最后的答案,通过链或停止发送. 一个共享的 `registerCallback` 名称不为所有子建立一个合同. 来源提供注册,持有,集成和每次发布可用性卡. ## 分享的图标行 使用多个全屏菜单 `Helper.topLevelMenus`. 其他消息来源解释说, `Helper.maxTableCols == 13` 允许11个可见的入口,因为两个列已保留. 通过的报表 `Helper.checkTopLevelConditions`, 不仅仅是列表长度. 版本 8.00/9.00 `Helper.topLevelConfig.scrolling`. 其他需要处理过度流动, 计算情况变化和有意识清洁. 不要禁用其他要求的模块滚动. 源详细说明了协调算法. ## 兼容性检查 检查X4/UIX版本,初始化时间,重复地图开放,注册解除和几个UI调整. 局部语法检查不会建立游戏中回调. 这些碎片并不是在X4中运行. 继续 [互联网共享API](wiki:ui-settings), [定制窗户](wiki:create-ui) 和 [Lua/MD](wiki:md-lua-bridge).