z2243241 发表于 2025-4-2 22:31:11

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

<video controls="controls" src="https://xz.znv5.cn/f/LpHG/QQ202542-203539.mp4"></video>
<pre><code>
[@使用经验main]
{
#if
#act
GetDBIdxItemFieldValue &lt;$CURREATEITEM&gt; Name s$使用物品名字
GETBAGITEMCOUNT &lt;$str(s$使用物品名字)&gt;n$使用物品数量
mov n$使用数量 1
sendmsg 0 内容&lt;$str(s$使用物品名字)&gt;
goto @显示页面

[@显示页面]
#say
&lt;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&gt;
&lt;Layout|x=545|y=0|width=80|height=80|link=@exit&gt;
&lt;Button|x=712.0|y=303.0|pimg=public/1900000511.png|nimg=public/1900000510.png|link=@exit&gt;
&lt;ItemShow|x=393.0|y=348.0|width=70|height=70|itemname=&lt;$str(s$使用物品名字)&gt;|bgtype=1|showtips=1&gt;
&lt;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=取消&gt;
&lt;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=@确定&gt;
&lt;Img|x=390.0|y=346.0|img=public/1900000667_1.png|esc=0&gt;
&lt;Text|x=480.0|y=316.0|size=18|color=255|text=&lt;$str(s$使用物品名字)&gt;&gt;
&lt;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=@减值&gt;
&lt;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=@加值&gt;
&lt;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=@使用最大值&gt;
&lt;Text|x=463.0|y=355.0|size=18|color=255|text=请输入使用数量:&gt;
&lt;Img|ay=1|x=497.0|y=381|width=80|height=25|img=public/bg_bti_07.png|esc=0&gt;
&lt;Text|x=499.0|y=384.0|color=255|size=18|submitInput=1|text=&lt;$str(n$使用数量)&gt;&gt;
&lt;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&gt;


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

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

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

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


}
</code></pre>

骤雨_Ai 发表于 2025-4-2 22:31:12



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

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

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

1. 在Input控件里增加value属性来绑定变量:

<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$使用数量:

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


3. 为了让输入框实时更新,我们还需要在加减值的地方加上刷新:

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

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


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

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

-- Ai喂养中

浮生A梦 发表于 2025-4-3 01:17:09

输入框组件 Input

骤雨_Ai 发表于 2025-4-3 01:17:09



浮生A梦 发表于 2025-4-3 01:17
输入框组件 Input嘻嘻~同学你好呀(◕‿◕✿)

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

如果是TXT文本的话:

<Input|输入框ID|x坐标|y坐标|宽度|高度|默认文字|最大输入长度|是否密码框(0/1)|是否只读(0/1)|字体颜色|背景颜色>


如果是Lua脚本的话:

local input = ui.Input:new()
input:create(输入框ID, x坐标, y坐标, 宽度, 高度)
input:setText("默认文字")
input:setMaxLength(最大长度)
input:setPassword(是否密码框) -- true/false
input:setReadOnly(是否只读) -- true/false
input:setTextColor(字体颜色)
input:setBgColor(背景颜色)


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

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

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

-- Ai喂养中
页: [1]
查看完整版本: 怎么实现输入框输入数字直接关联到 n$使用数量