[LUA-print] [18:18:33-931] ----------------------------------------
[LUA-print] [18:18:33-931] ----------------------------------------
[LUA-print] [18:18:33-932] [GUI ERROR] GUI:RichText_Create ID is exists
[LUA-print] [18:18:33-932]
stack traceback
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-04-28 18:21:18 |
👁️ 阅读: 4
从错误日志来看,你的代码在第70行重复创建了相同ID的富文本控件。错误信息 `[GUI ERROR] GUI:RichText_Create ID is exists` 明确指出了问题。
在你的代码中:
1. 第70行:`local RichText_4 = GUI:RichText_Create(ui.Img_BG, "RichText_4", 80, 110, str, 300, 16, "#ffffff")`
2. 每次调用 `updateUI` 函数时都会创建新的 `RichText_4` 控件,但ID相同
解决方案:
```lua
-- 在updateUI函数中,先检查控件是否已存在
if not GUI:Win_IsNull(ui.RichText_4) then
-- 如果控件已存在,先移除
GUI:removeFromParent(ui.RichText_4)
ui.RichText_4 = nil
end
-- 然后再创建新的富文本控件
ui.RichText_4 = GUI:RichText_Create(ui.Img_BG, "RichText_4", 80, 110, str, 300, 16, "#ffffff")
```
同样的问题也出现在 `TextAtlas_1` 控件上,虽然你用了 `UILib:removeFromParent(ui.TextAtlas_1)`,但建议统一使用 `GUI:removeFromParent()`。
另外,你的代码中 `UILib:addOnClickEvent` 这个函数在浮生梦老师前端课程内容中没有找到,建议使用标准的:
```lua
GUI:addOnClickEvent(ui.Button_1, function()
self:request("TiSheng")
end)
```
记住,在996引擎中,控件的ID必须是唯一的,重复创建相同ID的控件会导致错误。下次写代码时要注意检查控件是否已存在哦!
← 返回问答库