当前位置: 首页 > news >正文

传奇996_53——后端ui窗口局部刷新

描述:一个大窗口,点击某个键,弹出小窗口。

小窗口中将msg存进变量中
大窗口中判断一个参数是否为null,如果不为null,说明界面不是第一次打开,而是被刷新了。就加上小窗口的那个变量

有时小窗口中还有其他的东西,需要刷新,怎么搞,只要给变量重新赋值,然后再返回到主窗口就行。如何重新赋值?自己再重新调用一下自己,这不就是局部刷新了
比如小窗口有个按钮,点击按钮,按钮变色,刷新小窗口(调用自己),并把变色标识传过去,一般变的颜色会放在table中,直接根据参数标识动态显示。然后再返回给主界面。
参考:富豪捐献

-- 模块名:富豪捐献
--个人封装函数
require("Envir/Market_Def/newfunction/util/myUseFunction.lua")local zhi_fu_table = {[1] = {[1] = "zf0.png",[2] = "zf1.png",},[2] = {[1] = "hb0.png",[2] = "hb1.png", },[3] = {[1] = "wx0.png",[2] = "wx1.png", }
}-- 主界面设置按钮,点击调用方法,方法最后返回到主界面,方法中给变量加值,主界面会加上这个值,但是如何刷新呢?
-- 点击弹窗中的按钮,做到刷新,点击按钮,更新值,并返回到主界面,前提是要更新值,直接返回主界面也行,如果这个主界面的choose !=null,说明值改变,说明要更新串窗口变量,但是这样战线有点长
-- 还是更新值再返回主界面吧,更合理
-- <Button|x=642.0|y=439.0|nimg=public_new/fhjx/2.png|submitInput=1|link=@fhjx_quick,]]..(choose or 0)..[[>
-- 不用win_flag参数传递,而是用变量传递判断窗口是否打开的原因是防止按钮可反复点击,但是仅仅使用变量,无法判断是否是第一次打开,这样第一次打开就会打开窗口,就是大退不知道怎么把该变量置为0,所以就之恩呢用local-- 主界面函数
function fhjxshow(actor, win_flag)win_flag = tonumber(win_flag) or 0local msg = [[<Img|x=-500.0|y=-500.0|width=2000|height=2000|img=public/1900000651_1.png><Img|img=public_new/fhjx/1.png|loadDelay=1|show=4|move=0|reset=1|bg=1><Button|x=828.0|y=71.0|nimg=public/1900000510.png|pimg=public/1900000511.png|link=@exit><Effect|x=-7.0|y=-36.0|scale=1|speed=1|dir=5|effectid=93121|effecttype=0|act=0><Effect|x=765.0|y=419.0|scale=1|speed=1|dir=5|effectid=93122|effecttype=0|act=0><RText|x=305.0|y=427.0|size=18|text=<RText/FCOLOR=255><灵符/FCOLOR=251>><Button|x=642.0|y=439.0|nimg=public_new/fhjx/2.png|submitInput=1|link=@fhjx_quick,]]..win_flag..[[><Input|inputid=1|x=589.0|y=365.0|width=220|height=30|color=249|type=3|size=18|maxcount=14|mincount=3|isChatInput=0|place=请输入金额>]]-- choose != null,说明要刷新界面-- win_flag = tonumber(win_flag) or 0if win_flag == 1 then-- if getplaydef(actor, "N$窗口状态") == 1 thenmsg = msg..getplaydef(actor,"S$充值界面")endrelease_print("==============",msg)say(actor,msg)
end-- 点击触发函数
function fhjx_quick(actor,win_flag)if win_flag == "1" thenMessageUtil.sendItemWanning(actor,"请先完成当前支付")returnend-- if getplaydef(actor, "N$窗口状态") == 1 then-- endlocal num = parsetext("<$NPCINPUT(1)>", actor)if num == nil or num == "" or tonumber(num) <= 0 thenMessageUtil.sendItemWanning(actor,"请输入正确金额!")returnend-- 拉起充值界面open_chongzhi_ui(actor, 0, num)-- setplaydef(actor, "S$充值类型","富豪捐献")-- -- lualib:SetVar(player, "T202", "在线充值")-- local itemid = ItemUtil.getItemIdByName("灵符")-- pullpay(player, num, pay_type, itemid7)-- return fhjxshow(actor,1)
end-- 局部窗口变量函数
function open_chongzhi_ui(actor, choose, num)local msg = [[<Img|x=208.0|y=84.0|esc=0|bg=1|img=public/zxcz/zjm.png><Text|x=464.0|y=118.0|color=0|size=18|text=富豪捐献><Text|x=464.0|y=162.0|color=0|size=18|text=¥]]..num..[[><Text|x=464.0|y=200.0|color=22|size=18|text=¥]]..num..[[><Button|x=607.0|y=91.0|nimg=public_new/common/close.png|link=@fhjxshow,0>]]-- local local zhifu_showlocal zhifu_show_x = 246choose = tonumber(choose) or 0for i = 1, 3 doif choose == i thenzhifu_show = zhi_fu_table[i][2]elsezhifu_show = zhi_fu_table[i][1]end-- msg = msg..'<Button|x='..zhifu_show_x..'|y=301.0|color=255|size=18|nimg=public_new/common/'..zhifu_show..'|link=@update_win,'..i..'>'msg = msg..'<Button|x='..zhifu_show_x..'|y=281.0|color=255|size=18|pimg=public_new/common/'..zhifu_show..'|nimg=public_new/common/'..zhifu_show..'|link=@open_chongzhi_ui,'..i..','..num..'>'zhifu_show_x = zhifu_show_x + 124endsetplaydef(actor, "S$充值界面",msg)-- setplaydef(actor, "N$窗口状态",1)return fhjxshow(actor, 1)
end
http://www.lryc.cn/news/500587.html

相关文章:

  • C++ constexpr vs const
  • 【达梦数据库】存储过程调用实践案例-select
  • 041_Compare_Matrix_Squre_Sum_in_MATLAB中矩阵平方和的比较
  • TimeXplusplus——提高时间序列数据的可解释性,避免琐解和分布偏移问题的深度学习可解释性的框架
  • 批处理读取文本第n行并赋值给变量?--遍历所有行并赋值给变量数组
  • 嵌入式入门Day26
  • 【Vue3项目实战系列一】—— 从零开始一个vue3项目 vue3+javascript+vite 非常详细 手把手教学
  • Python_Flask04(牛马问答平台01)
  • Java转C之并发和多线程
  • 针对一个系统的权限管理这样的业务场景,使用各设计模式解说
  • Android AppCompatImageView View.Gone状态切换到View.VISIBLE重新layout,Kotlin
  • 在云上轻松部署达梦数据库
  • 什么是厄尔米特(Hermitian)矩阵?
  • React - useActionState、useFormStatus与表单处理
  • v3账号密码登录随机图片验证码
  • 不只是请求和响应:使用Fiddler解读Cookie与状态码全指南(下)
  • java+springboot+mysql游乐园管理系统
  • @RequestBody,getparameter,@RequestParam,@PathVariable之间的区别和联系
  • Linx下自动化之路:Redis安装包一键安装脚本实现无网极速部署并注册成服务
  • VMware虚拟机搭建和镜像配置
  • 红日靶场vulnstark 4靶机的测试报告[细节](一)
  • 深入详解人工智能机器学习常见算法——线性回归算法
  • Python 开发环境搭建
  • OpenCV相机标定与3D重建(9)相机标定函数calibrateCameraRO()的使用
  • flink终止提交给yarn的任务
  • 算法刷题Day14:BM36 判断是不是平衡二叉树
  • 【Golang】Go语言编程思想(六):Channel,第一节,介绍Channel
  • 【Flux.jl】 卷积神经网络
  • 大模型在辅导场景的深度应用,猿辅导素养课推出启发性“AI作文通”
  • 深入了解架构中常见的4种缓存模式及其实现