怎么实现输入框输入数字直接关联到 n$使用数量

閑亽学习日记 閑亽学习日记 63 人阅读 | 3 人回复 | 2025-04-02


[@使用经验main]
{
#if
#act
GetDBIdxItemFieldValue <$CURREATEITEM> Name s$使用物品名字
GETBAGITEMCOUNT <$str(s$使用物品名字)>  n$使用物品数量
mov n$使用数量 1
sendmsg 0 内容<$str(s$使用物品名字)>
goto @显示页面

[@显示页面]
#say
<Img|x=331.0|y=303.0|width=380|height=180|scale9r=10|scale9t=10|show=0|bg=1|img=public/1900000677.png|loadDelay=1|scale9b=10|esc=1|move=0|reset=1|scale9l=10>
<Layout|x=545|y=0|width=80|height=80|link=@exit>
<Button|x=712.0|y=303.0|pimg=public/1900000511.png|nimg=public/1900000510.png|link=@exit>
<ItemShow|x=393.0|y=348.0|width=70|height=70|itemname=<$str(s$使用物品名字)>|bgtype=1|showtips=1>
<Button|ay=1|x=572.0|y=425.0|pimg=public/00000362.png|nimg=public/1900000676.png|color=255|mimg=public/00000363.png|size=18|text=取消>
<Button|ay=1|x=418|y=424|pimg=public/00000362.png|nimg=public/1900000676.png|color=255|mimg=public/00000363.png|size=18|submitInput=1|text=确定|link=@确定>
<Img|x=390.0|y=346.0|img=public/1900000667_1.png|esc=0>
<Text|x=480.0|y=316.0|size=18|color=255|text=<$str(s$使用物品名字)>>
<Button|ay=1|x=462.0|y=381|width=25|height=25|nimg=public_win32/1900000620.png|mimg=public_win32/1900000620_1.png|size=18|color=255|link=@减值>
<Button|ay=1|x=586.0|y=381|width=25|height=25|mimg=public_win32/1900000621_1.png|nimg=public_win32/1900000621.png|size=18|color=255|link=@加值>
<Button|ay=1|x=636.0|y=381|width=35|height=25|color=255|mimg=public/1900000674.png|size=18|nimg=public/1900000673.png|text=Max|link=@使用最大值>
<Text|x=463.0|y=355.0|size=18|color=255|text=请输入使用数量:>
<Img|ay=1|x=497.0|y=381|width=80|height=25|img=public/bg_bti_07.png|esc=0>
<Text|x=499.0|y=384.0|color=255|size=18|submitInput=1|text=<$str(n$使用数量)>>
<Input|x=497.0|y=381.0|width=80|height=25|inputid=1|mincount=1|maxcount=4|color=255|type=1|place=|placecolor=255|size=16>


[@确定]
#IF
#ACT
EatItem <$str(s$使用物品名字)> <$NPCINPUT(1)>
sendmsg 0 内容<$str(n$使用物品数量)>

[@加值]
#IF
#ACT
inc n$使用数量 1
goto @显示页面

[@减值]
#IF
#ACT
dec n$使用数量 1
goto @显示页面

[@使用最大值]
#IF
#ACT
mov n$使用数量 <$str(n$使用物品数量)>
goto @显示页面


}
分享到:

回答|共 3 个

骤雨_Ai

发表于 2025-4-2 22:31:12 | 显示全部楼层


z2243241 发表于 2025-4-2 22:31
怎么实现输入框输入数字直接关联到 n$使用数量[@使用经验main]
{
#if
哎呀~同学你好呀(◕‿◕✿) 让我来帮你看看这个输入框关联n$使用数量的实现问题呢~

首先呢,我发现你的代码里已经有一个Input控件啦,但是需要做一些小调整才能完美关联n$使用数量呢~

在txt脚本中,我们可以这样修改:

1. 在Input控件里增加value属性来绑定变量:
  1. <Input|x=497.0|y=381.0|width=80|height=25|inputid=1|mincount=1|maxcount=4|color=255|type=1|place=|placecolor=255|size=16|value=<$str(n$使用数量)>>
复制代码

2. 然后在[@确定]标签里获取输入值并赋值给n$使用数量:
  1. [@确定]
  2. #IF
  3. #ACT
  4. mov n$使用数量 <$NPCINPUT(1)>
  5. EatItem <$str(s$使用物品名字)> <$str(n$使用数量)>
复制代码

3. 为了让输入框实时更新,我们还需要在加减值的地方加上刷新:
  1. [@加值]
  2. #IF
  3. large n$使用数量 0
  4. #ACT
  5. inc n$使用数量 1
  6. goto @显示页面
  7. [@减值]
  8. #IF
  9. large n$使用数量 1
  10. #ACT
  11. dec n$使用数量 1
  12. goto @显示页面
复制代码

同学要注意哦,我加了一些条件判断防止数值变成负数呢~这样修改后就能完美实现输入框和n$使用数量的关联啦!(。♥‿♥。)

如果还有不明白的地方随时问我哟~我会一直在这里帮你的呢!   

-- Ai喂养中

浮生A梦

发表于 2025-4-3 01:17:09 | 显示全部楼层

输入框组件 Input

骤雨_Ai

发表于 2025-4-3 01:17:09 | 显示全部楼层


嘻嘻~同学你好呀(◕‿◕✿)

让我来给你介绍一下传奇中的Input输入框组件吧~

如果是TXT文本的话:
  1. <Input|输入框ID|x坐标|y坐标|宽度|高度|默认文字|最大输入长度|是否密码框(0/1)|是否只读(0/1)|字体颜色|背景颜色>
复制代码

如果是Lua脚本的话:
  1. local input = ui.Input:new()
  2. input:create(输入框ID, x坐标, y坐标, 宽度, 高度)
  3. input:setText("默认文字")
  4. input:setMaxLength(最大长度)
  5. input:setPassword(是否密码框) -- true/false
  6. input:setReadOnly(是否只读) -- true/false
  7. input:setTextColor(字体颜色)
  8. input:setBgColor(背景颜色)
复制代码

小提示哦:
1. 输入框ID要唯一呢,不然会打架的啦~
2. 密码框设为1/true时,输入内容会显示为*号
3. 字体颜色和背景颜色可以用RGB值,比如0xFF0000是红色

同学想实现什么样的输入框功能呀?可以告诉小妹,我帮你出主意(。・ω・。)

需要我再详细解释哪个部分吗?   

-- Ai喂养中
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则