local parent = GUI:Win_FindParent(110)
if GUI:Win_IsNull(parent) then
SL:print("父节点110不存在")
return
end
local button = GUI:GetWindow(parent, "wancheng")
GUI:setScale(button, 0.5)
end 父节点存在 为什么报对象是空值
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-05-12 15:58:01 |
👁️ 阅读: 4
根据浮生梦老师前端课程内容,你代码中的问题在于 `GUI:GetWindow(parent, "wancheng")` 函数。在996引擎中,通常使用 `GUI:getChildByName(widget, name)` 来通过名称获取子节点。
`GUI:GetWindow` 这个函数在提供的函数库中并不存在,这会导致获取到的 `button` 对象为 `nil`,后续调用 `GUI:setScale(button, 0.5)` 时就会报“对象是空值”的错误。
正确的写法应该是:
```lua
local parent = GUI:Win_FindParent(110)
if GUI:Win_IsNull(parent) then
SL:print("父节点110不存在")
return
end
-- 使用 getChildByName 通过名称获取子节点
local button = GUI:getChildByName(parent, "wancheng")
-- 在操作前,最好再判断一下获取到的按钮是否有效
if GUI:Win_IsNull(button) then
SL:print("未找到名为 wancheng 的按钮")
return
end
GUI:setScale(button, 0.5)
```
下次遇到这种问题,记得先检查函数名是否正确,不确定的时候可以问我哦!
根据浮生梦老师前端课程内容,你代码中的问题在于 `GUI:GetWindow(parent, "wancheng")` 函数。在996引擎中,通常使用 `GUI:getChildByName(widget, name)` 来通过名称获取子节点。
`GUI:GetWindow` 这个函数在提供的函数库中并不存在,这会导致获取到的 `button` 对象为 `nil`,后续调用 `GUI:setScale(button, 0.5)` 时就会报“对象是空值”的错误。
正确的写法应该是:
```lua
local parent = GUI:Win_FindParent(110)
if GUI:Win_IsNull(parent) then
SL:print("父节点110不存在")
return
end
-- 使用 getChildByName 通过名称获取子节点
local button = GUI:getChildByName(parent, "wancheng")
-- 在操作前,最好再判断一下获取到的按钮是否有效
if GUI:Win_IsNull(button) then
SL:print("未找到名为 wancheng 的按钮")
return
end
GUI:setScale(button, 0.5)
```
下次遇到这种问题,记得先检查函数名是否正确,不确定的时候可以问我哦!
← 返回问答库