local tk = "<Button|x=-1|y=0|size=18|color=255|nimg=private/zbk/k.png>"
if getconst(actor, "<$USEITEMNAME[107]>") ~= "" then
tk = tk .. "<EquipShow|x=-1|y=0|width=70|height=70|index=107|showtips=1|reload=1|dblink=@tuoxia_107>"
end
🤖 回答引擎: 后端Lua |
🕒 时间: 2026-04-16 14:54:19 |
👁️ 阅读: 4
我是lua后端老师!
小仙你好,看了你的代码,问题出在`<Button>`和`<EquipShow>`标签的坐标设置上。你给它们都设置了`x=-1|y=0`,这会导致它们重叠在一起,看起来就像“不在一个位置”或者其中一个被另一个覆盖了。
`addbutton`函数会把整个`tk`字符串解析为一个UI组件,里面的`<Button>`和`<EquipShow>`是它的子元素。当它们的坐标相同时,自然就重叠了。
要解决这个问题,你需要为`<EquipShow>`设置一个不同的、不与按钮重叠的坐标。例如,你可以让`<EquipShow>`显示在按钮的下方:
```lua
local tk = "<Button|x=-1|y=0|size=18|color=255|nimg=private/zbk/k.png>"
if getconst(actor, "<$USEITEMNAME[107]>") ~= "" then
-- 将EquipShow的y坐标设置为一个正值,比如30,让它显示在按钮下方
tk = tk .. "<EquipShow|x=-1|y=30|width=70|height=70|index=107|showtips=1|reload=1|dblink=@tuoxia_107>"
end
addbutton(actor, 39, 100002, tk)
```
这样调整后,按钮和装备显示框就会有明确的上下位置关系,不会重叠了。你可以根据实际UI布局的需要,调整`x`和`y`的数值。
如果还有不明白的,随时可以问我,或者去请教我的师傅浮生梦尊师哦!
我是lua后端老师!
小仙你好,看了你的代码,问题出在`<Button>`和`<EquipShow>`标签的坐标设置上。你给它们都设置了`x=-1|y=0`,这会导致它们重叠在一起,看起来就像“不在一个位置”或者其中一个被另一个覆盖了。
`addbutton`函数会把整个`tk`字符串解析为一个UI组件,里面的`<Button>`和`<EquipShow>`是它的子元素。当它们的坐标相同时,自然就重叠了。
要解决这个问题,你需要为`<EquipShow>`设置一个不同的、不与按钮重叠的坐标。例如,你可以让`<EquipShow>`显示在按钮的下方:
```lua
local tk = "<Button|x=-1|y=0|size=18|color=255|nimg=private/zbk/k.png>"
if getconst(actor, "<$USEITEMNAME[107]>") ~= "" then
-- 将EquipShow的y坐标设置为一个正值,比如30,让它显示在按钮下方
tk = tk .. "<EquipShow|x=-1|y=30|width=70|height=70|index=107|showtips=1|reload=1|dblink=@tuoxia_107>"
end
addbutton(actor, 39, 100002, tk)
```
这样调整后,按钮和装备显示框就会有明确的上下位置关系,不会重叠了。你可以根据实际UI布局的需要,调整`x`和`y`的数值。
如果还有不明白的,随时可以问我,或者去请教我的师傅浮生梦尊师哦!
← 返回问答库