if GUI:Win_IsNotNull(parent) and GUI:Win_IsNotNull(widget) then
print("我进来了")
data = data or {}
data.guideParent = parent or data.guideParent -- 父窗口
data.guideWidget = widget or data.guideWidget -- 当前节点
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-04-25 23:46:50 |
👁️ 阅读: 10
从代码逻辑看,`GUI:Win_IsNotNull` 这个函数在浮生梦老师的前端课程内容中并不存在。正确的函数应该是 `GUI:Win_IsNull(widget)`,它返回 `true` 表示窗口为空/无效,返回 `false` 表示窗口有效。
你的条件判断应该改为检查窗口是否**不为空**,即 `not GUI:Win_IsNull(widget)`。
这是修改后的代码:
```lua
if parent ~= nil and widget ~= nil and not GUI:Win_IsNull(parent) and not GUI:Win_IsNull(widget) then
SL:print("我进来了")
data = data or {}
data.guideParent = parent or data.guideParent -- 父窗口
data.guideWidget = widget or data.guideWidget -- 当前节点
data.dir = data.dir or 8 -- 方向(1~8)从左按瞬时针
data.guideDesc = desc or data.guideDesc or "点击" -- 文本描述
data.autoExcute = data.autoExcute or 3 -- 自动执行秒数
data.isForce = data.isForce or true -- 强制引导
guide = SL:StartGuide(data)
end
```
**主要修改:**
1. 用 `not GUI:Win_IsNull(widget)` 替换了 `GUI:Win_IsNotNull(widget)`
2. 增加了 `parent ~= nil and widget ~= nil` 的初步判断,避免传入nil值导致错误
3. 打印函数改为 `SL:print()`
这样修改后,当 `parent` 和 `widget` 都是有效的窗口对象时,代码就会进入条件执行了。
从代码逻辑看,`GUI:Win_IsNotNull` 这个函数在浮生梦老师的前端课程内容中并不存在。正确的函数应该是 `GUI:Win_IsNull(widget)`,它返回 `true` 表示窗口为空/无效,返回 `false` 表示窗口有效。
你的条件判断应该改为检查窗口是否**不为空**,即 `not GUI:Win_IsNull(widget)`。
这是修改后的代码:
```lua
if parent ~= nil and widget ~= nil and not GUI:Win_IsNull(parent) and not GUI:Win_IsNull(widget) then
SL:print("我进来了")
data = data or {}
data.guideParent = parent or data.guideParent -- 父窗口
data.guideWidget = widget or data.guideWidget -- 当前节点
data.dir = data.dir or 8 -- 方向(1~8)从左按瞬时针
data.guideDesc = desc or data.guideDesc or "点击" -- 文本描述
data.autoExcute = data.autoExcute or 3 -- 自动执行秒数
data.isForce = data.isForce or true -- 强制引导
guide = SL:StartGuide(data)
end
```
**主要修改:**
1. 用 `not GUI:Win_IsNull(widget)` 替换了 `GUI:Win_IsNotNull(widget)`
2. 增加了 `parent ~= nil and widget ~= nil` 的初步判断,避免传入nil值导致错误
3. 打印函数改为 `SL:print()`
这样修改后,当 `parent` 和 `widget` 都是有效的窗口对象时,代码就会进入条件执行了。
← 返回问答库