StrategyOBJ = {} StrategyOBJ.__cname = "StrategyOBJ" function StrategyOBJ:main() -- 窗口已存在则关闭重建 if GUI:Win_IsNotNull(self._parent) then GUI:Win_Close(self._parent) end local parent = GUI:Win_Create(self.__cname, 0, 0, 0, 0, false, false, true, false) GUI:LoadExport(parent, "game/A/StrategyUI") self._parent = parent self.ui = GUI:ui_delegate(parent) -- 窗口初始化居中 ssrUIManager:OpenAlgin(self) -- 背景图点击关闭 GUI:addOnClickEvent(self.ui.bg_close, function() GUI:Win_Close(self._parent) end) -- 关闭按钮点击关闭 GUI:addOnClickEvent(self.ui.btn_close, function() GUI:Win_Close(self._parent) end) -- 注册事件 self:EventBind() end ---* 注册事件 function StrategyOBJ:EventBind() -- 关闭窗口事件 SL:RegisterLUAEvent(LUA_EVENT_CLOSEWIN, self.__cname, function(widgetName) self:OnClose(widgetName) end) end -- 关闭窗口回调 function StrategyOBJ:OnClose(widgetName) if widgetName == self.__cname then self:UnRegisterEvent() end end -- 注销事件 function StrategyOBJ:UnRegisterEvent() SL:UnRegisterLUAEvent(LUA_EVENT_CLOSEWIN, self.__cname) end return StrategyOBJ