---@type IDBasePanel local TRBasePanel = require("ui.panel.TRBasePanel") ---@class TRPEditPrice:TRBasePanel 邮件列表 local TRPEditPrice = class("TRPEditPrice", TRBasePanel) local uiobjs = {} local callback -- 初始化,只会调用一次 function TRPEditPrice:init(csObj) TRPEditPrice.super.init(self, csObj) self:setEventDelegate() ---@type CLUIFormRoot uiobjs.formRoot = self.csSelf:GetComponent("CLUIFormRoot") end -- 设置数据 ---@param paras _ParamTRPEditPrice function TRPEditPrice:setData(paras) self.mdata = paras.data callback = paras.callback end -- 显示,在c#中。show为调用refresh,show和refresh的区别在于,当页面已经显示了的情况,当页面再次出现在最上层时,只会调用refresh function TRPEditPrice:show() uiobjs.formRoot:setValue(self.mdata) end -- 刷新 function TRPEditPrice:refresh() end -- 关闭页面 function TRPEditPrice:hide() end -- 网络请求的回调;cmd:指命,succ:成功失败,msg:消息;paras:服务器下行数据 function TRPEditPrice:procNetwork(cmd, succ, msg, paras) if (succ == NetSuccess) then --[[ if cmd == xx then end ]] end end function TRPEditPrice:setEventDelegate() self.EventDelegate = { ButtonCancel = function() hideTopPanel(self.csSelf) end, ButtonOkay = function() hideTopPanel(self.csSelf) self.mdata = uiobjs.formRoot:getValue(self.mdata, true) if tonumber(self.mdata.productNum) <= 0 then MyUtl.toastW("数量不能低于1") return end Utl.doCallback(callback, self.mdata) end } end -- 处理ui上的事件,例如点击等 function TRPEditPrice:uiEventDelegate(go) local func = self.EventDelegate[go.name] if func then func() end end -- 当顶层页面发生变化时回调 function TRPEditPrice:onTopPanelChange(topPanel) end -------------------------------------------- return TRPEditPrice