获取父节点所有子节点
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-05-03 23:46:22 |
👁️ 阅读: 8
获取父节点的所有子节点可以使用 `GUI:getChildren(widget)` 函数。
这个函数需要:
- `widget`:必选,userdata类型,父节点控件对象
- 返回值:table类型,包含所有子节点对象的数组
示例代码:
```lua
-- 创建父节点
local parent = GUI:Win_Create("GMMain", 0, 0, 0, 0, false, false, true, false, false, false, 1)
-- 创建几个子节点
local child1 = GUI:Widget_Create(parent, "child1", 10, 10, 50, 50)
local child2 = GUI:Widget_Create(parent, "child2", 70, 10, 50, 50)
local child3 = GUI:Widget_Create(parent, "child3", 130, 10, 50, 50)
-- 获取所有子节点
local children = GUI:getChildren(parent)
-- 遍历子节点
if children then
for i, child in ipairs(children) do
SL:Print("第" .. i .. "个子节点")
end
end
```
注意:如果父节点没有子节点,返回的可能是空table或nil,建议在使用前进行判断。
← 返回问答库