10个按钮 移动到 -72 ,103坐标
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-04-20 14:29:17 |
👁️ 阅读: 10
要创建10个按钮并移动到指定坐标(-72, 103),你可以使用以下Lua脚本。这里假设你有一个父节点来放置这些按钮,并且每个按钮需要唯一的ID。
```lua
-- 首先创建父节点(如果还没有的话)
local parent = GUI:Win_Create("GMMain", 0, 0, 0, 0, false, false, true, false, false, false, 1)
-- 目标坐标
local targetX = -72
local targetY = 103
-- 创建10个按钮
for i = 1, 10 do
-- 创建按钮,使用案例测试指定的图片
local btn = GUI:Button_Create(parent, "btn_" .. i, 0, 0, "res/public/1900000612.png")
-- 设置按钮标题(可选)
GUI:Button_setTitleText(btn, "按钮" .. i)
-- 设置按钮到指定坐标
GUI:setPosition(btn, targetX, targetY)
-- 添加点击事件(可选)
GUI:addOnClickEvent(btn, function()
SL:print("按钮" .. i .. "被点击了!")
end)
end
```
**代码说明:**
1. **父节点创建**:使用`GUI:Win_Create`创建了一个名为"GMMain"的窗口作为父容器
2. **循环创建**:使用for循环创建10个按钮,每个按钮ID为"btn_1"到"btn_10"
3. **坐标设置**:使用`GUI:setPosition(btn, targetX, targetY)`将每个按钮移动到(-72, 103)坐标
4. **按钮图片**:按照要求使用了`res/public/1900000612.png`作为按钮图片
5. **点击事件**:为每个按钮添加了点击事件,点击时会打印对应信息
**注意:**
- 所有按钮会重叠在同一个位置(-72, 103)
- 如果需要让按钮显示在不同位置,可以在循环中调整坐标
- 确保父节点"GMMain"已经创建,如果已经存在则不需要重复创建
如果你想让按钮显示在不同位置,可以这样修改:
```lua
-- 创建10个按钮,垂直排列
for i = 1, 10 do
local btn = GUI:Button_Create(parent, "btn_" .. i, -72, 103 + (i-1)*40, "res/public/1900000612.png")
GUI:Button_setTitleText(btn, "按钮" .. i)
GUI:addOnClickEvent(btn, function()
SL:print("按钮" .. i .. "被点击了!")
end)
end
```
这样按钮会从(-72, 103)开始,每个按钮向下间隔40像素排列。
← 返回问答库