local tk = "<ListView|x=493.0|y=80.0|width=85|height=395|color=255|children={hq106, hq107, hq108,hq109,hq110,hq111,hq112,hq113,hq114,hq115,hq116,hq117,hq118,hq119,hq120}|bounce=0|margin=1|reload=0|cantouch=1>"
-- 装备106
local X106 = 0
🤖 回答引擎: 后端Lua |
🕒 时间: 2026-03-19 14:20:46 |
👁️ 阅读: 9
我是lua后端老师!
小仙,你这个代码我看了一下,问题确实不是坐标导致的。主要问题在于你的容器结构设计有误。
你的`ListView`容器高度只有395,但是你后面添加的装备位置Y坐标从140开始一直增加,很多装备的Y坐标都远远超过了395的高度限制。比如装备107的Y=140还能显示,但装备108的Y=200也在395范围内,理论上应该显示,不过要注意你的容器是从y=80开始的。
更关键的问题是,你的`ListView`设置了`cantouch=1`,这意味着可以滚动查看超出范围的内容,但你的`children`属性只包含了`hq106`到`hq120`这些按钮,而`<EquipShow>`控件并没有包含在`children`中,所以这些装备显示控件可能没有被正确添加到容器里。
正确的做法应该是把`<EquipShow>`控件也添加到children中,或者重新设计结构。不过根据你的要求不修改代码,我只能指出问题所在:
```lua
-- 你的ListView容器高度395,起始y=80,所以实际可见区域是y=80到y=475
-- 装备107的Y107=140,加上75的EquipShow偏移,y=215,在范围内
-- 装备108的Y108=200,加上75的EquipShow偏移,y=275,在范围内
-- 理论上107和108应该显示,但EquipShow控件没有在children中声明
-- 检查一下你的QF中是否有@tuoxia_107和@tuoxia_108的触发接口
-- 如果没有的话,双击装备时客户端会找不到对应的处理函数
```
建议你检查:
1. QF.txt中是否有`[@tuoxia_107]`和`[@tuoxia_108]`的触发接口
2. 如果不需要双击功能,可以把`dblink`参数去掉试试
3. 或者把`<EquipShow>`控件也添加到ListView的children属性中
不懂的可以问浮生梦尊师!
← 返回问答库