KLCalcPanel.lua 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. ---@class KLCalcPanel:UIKmlLuaPanelBase
  2. ---@field view KLCalcPanelView
  3. local KLCalcPanel = class(UIKmlLuaPanelBase)
  4. local this =KLCalcPanel
  5. ---创建时调用一次
  6. function this:Init()
  7. self.nowNum = 0
  8. self.maxNum = self.args["maxNum"]
  9. ---是否关闭当前界面
  10. self.isClosePanel = 1
  11. if self.args and self.args["isClosePanel"] then
  12. self.isClosePanel = self.args["isClosePanel"]
  13. end
  14. self.x = self.args["x"]
  15. self.y = self.args["y"]
  16. if self.x then
  17. GUI:setPositionX(self.view.root,self.x)
  18. end
  19. if self.y then
  20. GUI:setPositionY(self.view.root,self.y)
  21. end
  22. self.callback = self.args["callback"]
  23. self.ins = self.args["ins"]
  24. end
  25. ---创建或者刷新界面数据时调用
  26. function this:Refresh()
  27. self.nowNum = 0
  28. GUI:Text_setString(self.view.intro, self.args.intro or "增加点数")
  29. GUI:Text_setString(self.view.num, "0")
  30. end
  31. ---注册UI事件和服务器消息
  32. function this:RegistEvents()
  33. GUI:AddOnClickEvent(self.view.CloseBtn,self,self.CloseBtnOnClick)
  34. GUI:AddOnClickEvent(self.view.firstButton,self,self.firstButtonOnClick)
  35. GUI:AddOnClickEvent(self.view.twoButton,self,self.twoButtonOnClick)
  36. GUI:AddOnClickEvent(self.view.threeButton,self,self.threeButtonOnClick)
  37. GUI:AddOnClickEvent(self.view.fourButton,self,self.fourButtonOnClick)
  38. GUI:AddOnClickEvent(self.view.fiveButton,self,self.fiveButtonOnClick)
  39. GUI:AddOnClickEvent(self.view.sixButton,self,self.sixButtonOnClick)
  40. GUI:AddOnClickEvent(self.view.sevenButton,self,self.sevenButtonOnClick)
  41. GUI:AddOnClickEvent(self.view.eightButton,self,self.eightButtonOnClick)
  42. GUI:AddOnClickEvent(self.view.nineButton,self,self.nineButtonOnClick)
  43. GUI:AddOnClickEvent(self.view.zeroButton,self,self.zeroButtonOnClick)
  44. GUI:AddOnClickEvent(self.view.undoButton,self,self.undoButtonOnClick)
  45. GUI:AddOnClickEvent(self.view.sureButton,self,self.sureButtonOnClick)
  46. end
  47. function this:CloseBtnOnClick()
  48. GUI:UIPanel_Close("dev/ui/Common/Panel/KLCalc/KLCalcPanel")
  49. GUI:UIPanel_Close("dev/outui/SkillTips/Panel/KLUISkillUpTips/KLUISkillUpTipsPanel")
  50. if self.callback then
  51. self.callback(self.ins, self.nowNum)
  52. end
  53. end
  54. function this:firstButtonOnClick()
  55. self.nowNum = self.nowNum * 10 + 1
  56. self:SetNum()
  57. end
  58. function this:twoButtonOnClick()
  59. self.nowNum = self.nowNum * 10 + 2
  60. self:SetNum()
  61. end
  62. function this:threeButtonOnClick()
  63. self.nowNum = self.nowNum * 10 + 3
  64. self:SetNum()
  65. end
  66. function this:fourButtonOnClick()
  67. self.nowNum = self.nowNum * 10 + 4
  68. self:SetNum()
  69. end
  70. function this:fiveButtonOnClick()
  71. self.nowNum = self.nowNum * 10 + 5
  72. self:SetNum()
  73. end
  74. function this:sixButtonOnClick()
  75. self.nowNum = self.nowNum * 10 + 6
  76. self:SetNum()
  77. end
  78. function this:sevenButtonOnClick()
  79. self.nowNum = self.nowNum * 10 + 7
  80. self:SetNum()
  81. end
  82. function this:eightButtonOnClick()
  83. self.nowNum = self.nowNum * 10 + 8
  84. self:SetNum()
  85. end
  86. function this:nineButtonOnClick()
  87. self.nowNum = self.nowNum * 10 + 9
  88. self:SetNum()
  89. end
  90. function this:zeroButtonOnClick()
  91. self.nowNum = self.nowNum * 10
  92. self:SetNum()
  93. end
  94. function this:undoButtonOnClick()
  95. self.nowNum = self.nowNum//10
  96. self:SetNum()
  97. end
  98. function this:SetNum()
  99. if self.nowNum > self.maxNum then
  100. self.nowNum = self.maxNum
  101. end
  102. GUI:Text_setString(self.view.num, tostring(self.nowNum))
  103. end
  104. function this:sureButtonOnClick()
  105. if self.isClosePanel == 1 then
  106. GUI:UIPanel_Close("dev/ui/Common/Panel/KLCalc/KLCalcPanel")
  107. end
  108. if self.callback then
  109. self.callback(self.ins, self.nowNum)
  110. end
  111. end
  112. function this:Close()
  113. end
  114. return this