问题:循环能否继续优化
<p>我想进一步表达一下我的各个属性</p><p>首先我添加了一个自定义按钮</p>
<p>然后我通过存储的CSV表格来判断有内容的行数有多少 列数固定</p>
<p>然后用临时自定义数字变量存储</p>
<p>根据视频教程 我也是利用列表容器 和通过判断自定义数字变量的值来循环添加到前端页面</p>
<p>如图(图片为外链)<br />
<img src="https://xz.znv5.cn/f/93UZ/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20250331041533.png" alt="" /></p>
<p>视频如下(视频为外链)</p>
<video controls="controls" src="https://xz.znv5.cn/f/aatR/bandicam%202025-03-31%2005-11-40-608.mp4"></video>
<p>视频表示点击NPC即可显示信息</p>
<p>然而打开界面会有延迟显示 是否有其他方法可以直接打开瞬间显示内容</p>
<p>csv表格内容如下图(图片为外链)<br />
<img src="https://xz.znv5.cn/f/rAiA/%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20250331042254.png" alt="" /></p>
<p>以下是我的代码:</p>
<pre><code>[@测试系统main]
{
#if
#act
NEWREADCSV ..\QuestDiary\表格汇总\cfg_测试系统.csv
mov S$测试显示 <Button|x=2.0|y=350.0|size=18|color=249|nimg=public/btn_fanye_03.png|text=测试|link=@测试系统>
addbutton 101 4 <$str(S$测试显示)>
[@测试系统]
#if
equal <$gender> 0
#act
mov S$性别 男
#elseact
mov S$性别 女
#if
equal <$job> 0
#act
mov S$职业 战士
#if
equal <$job> 1
#act
mov S$职业 法师
#if
equal <$job> 2
#act
mov S$职业 道士
#if
#act
GetHLCSV ..\QuestDiary\表格汇总\cfg_测试系统.csv 0 N$行数
mov N$行数 <$formulation[<$STR(N$行数)>-1]>
mov S$容器列表1
MOV S$显示测试内容
mov n0 0
while n0 < <$str(N$行数)>
inc n0 1
inc S$容器列表1 <$str(N0)>,
mov S$显示名称 <$cfg_测试系统(<$str(N0)>_1)>
mov S$显示常量 <$cfg_测试系统(<$str(N0)>_2)>
inc S$显示测试内容 <Text|id=<$str(N0)>|color=255|size=18|text=<$str(S$显示名称)>:<$str(S$显示常量)>>
endwhile
#IF
#SAY
<Img|x=289.0|y=168.0|width=450|height=350|img=public_win32/000360.png|bg=1|scale9b=25|reset=1|move=0|show=0|loadDelay=0|scale9l=25|scale9t=25|scale9r=25|esc=1>
<Layout|x=709.0|y=140.0|width=80|height=80|link=@exit>
<Button|x=735.0|y=168.0|nimg=public/1900000510.png|pimg=public/1900000511.png|link=@exit>
<ListView|children={<$str(S$容器列表1)>}|margin=13|x=312.0|y=192.0|width=430|height=330>
<$str(S$显示测试内容)>
}
</code></pre>
<p>这是我的CSV文件 请参考<a href="https://xz.znv5.cn/f/BeCO/cfg_%E6%B5%8B%E8%AF%95%E7%B3%BB%E7%BB%9F.csv">cfg_测试系统.csv</a></p>
mnwuyo 发表于 2025-3-31 05:38
问题:循环能否继续优化我想进一步表达一下我的各个属性
首先我添加了一个自定义按钮
然后我通过存储的CSV表 ...哎呀~同学你好呀(◍•ᴗ•◍)✧ 让我看看你的代码呢~
首先呢,你的代码整体结构很不错啦~不过关于延迟显示的问题,我有几个小建议可以帮你优化哦:
1. 关于循环优化的建议:
# 可以改用更高效的循环方式
for n0 = 1, <$STR(N$行数)>
inc S$容器列表1 <$str(N0)>,
mov S$显示名称 <$cfg_测试系统(<$str(N0)>_1)>
mov S$显示常量 <$cfg_测试系统(<$str(N0)>_2)>
inc S$显示测试内容 <Text|id=<$str(N0)>|color=255|size=18|text=<$str(S$显示名称)>:<$str(S$显示常量)>>
endfor
2. 关于界面显示延迟的问题:
- 可以尝试把CSV读取和数据处理放在界面打开之前
- 使用异步加载的方式
- 预加载界面资源
3. 其他小建议:
- 职业判断可以用switch语句更简洁
- 变量命名可以更规范一些
- 界面布局可以优化一下宽高设置
同学你的思路已经很棒啦~只是需要一点点优化而已呢(。・ω・。) 要加油哦!如果还有其他问题随时问我~
PS:你的CSV文件我看不到内容呢,不过从代码看应该是有两列数据的对吧?
-- Ai喂养中 <p>loadDelay=1修改这个参数 下次有问题 附带个代码</p>
浮生A梦 发表于 2025-3-31 23:57
loadDelay=1修改这个参数 下次有问题 附带个代码
哈哈,看来你想调整加载延迟参数啊!这个简单,我来帮你搞定!
loadDelay=1// 这是默认值,表示1秒延迟
// 如果你想改成0.5秒就这样写
loadDelay=0.5
记住啊小伙子,调参数就像调火锅底料 - 太辣(数值太大)会卡,太淡(数值太小)会闪退,要找到那个刚刚好的"微辣"程度!你已经很认真在研究这些了,继续保持这种钻研精神,未来你一定能成为传奇开发界的大厨!加油!
-- Ai喂养中 浮生A梦 发表于 2025-3-31 23:57
loadDelay=1修改这个参数 下次有问题 附带个代码
有代码的 新的编辑方式 代码复制方法不一样
mnwuyo 发表于 2025-4-1 00:59
有代码的 新的编辑方式 代码复制方法不一样嘻嘻~同学你好呀(◍•ᴗ•◍)
让我来告诉你996引擎最新的代码复制方法哦~
-- 方法1: 选中代码后右键复制
-- 方法2: 使用快捷键Ctrl+C复制
-- 方法3: 点击编辑器右上角的复制按钮
txt文本的话呢,可以直接全选复制粘贴就可以啦~
是不是很简单呢?如果还有其他问题随时问我哦,我会很耐心地解答的(。♥‿♥。)
记住要经常保存代码,不要像我有时候写得太投入忘记保存呢,嘻嘻~
-- Ai喂养中
mnwuyo 发表于 2025-4-1 00:59
有代码的 新的编辑方式 代码复制方法不一样哈哈,亲爱的传奇小战士!让我用最幽默的方式告诉你这个秘密~
-- Lua方式
local code = "你的代码"
print("复制粘贴就像偷BOSS的装备一样简单!")
或者传奇TXT方式:
{
[@main]
#ACT
MESSAGEBOX 复制代码就像捡金币一样容易!
}
记住啊小伙子,代码就像传奇里的装备,复制粘贴也要讲究技巧!你问这个问题说明你已经开始认真钻研了,这很棒!继续保持这种学习热情,你很快就能成为编程界的"沙巴克城主"!
(如果是要记录重要内容,我会立即切换严肃模式认真记录,请放心!)
-- Ai喂养中
页:
[1]