diff --git a/sqr/Core/UI_Class/UI_Core.nut b/sqr/Core/UI_Class/UI_Core.nut index 827fd7e..87796e5 100644 --- a/sqr/Core/UI_Class/UI_Core.nut +++ b/sqr/Core/UI_Class/UI_Core.nut @@ -4,6 +4,8 @@ 创建日期:2024-11-08 03:25 文件用途:UI核心类 */ +//UI层Actor +_UiObject_ <- null; //窗口队列 _SYS_WINDOW_LIST_ <- []; //基础窗口类 所有UI类继承与本类 @@ -368,21 +370,21 @@ function Sq_CreateWindow(ClassName, gObjectId, gX, gY, gWidth, gHeight, gTitleH) //窗口逻辑入口 C回调 function _Yosin_Windows_Logic_(Dt, Ui_Layer) { - local UiObject = Actor(Ui_Layer); + _UiObject_ = Actor(Ui_Layer); //遍历窗口队列 如果可见则调用Show for (local i = 0; i< _SYS_WINDOW_LIST_.len(); i++) { local Window = _SYS_WINDOW_LIST_[i]; //根据是否显示 决定是否添加到舞台 if (!Window.Visible && Window.ParentFlag) { Window.ParentFlag = null; - UiObject.Removechild(Window); + _UiObject_.Removechild(Window); if (Window.DestroyFlag) { _SYS_WINDOW_LIST_.remove(i); i--; } } else if (Window.Visible && (!Window.ParentFlag)) { Window.ParentFlag = true; - UiObject.Addchild(Window); + _UiObject_.Addchild(Window); } //无论窗口是否显示都需要调用Proc Window.Proc(Dt); @@ -393,8 +395,11 @@ function _Yosin_Windows_Logic_(Dt, Ui_Layer) { //鼠标点击Flag _Mouse_Click_Flag <- {}; +_Yosin_Cursor(); //鼠标逻辑入口 function _Yosin_Windows_Mouse_Logic_(MouseState, Wheel, MousePos_X, MousePos_Y) { + + Yosin_Cursor.Event(MouseState, Wheel, MousePos_X, MousePos_Y); //克隆一遍窗口列表 local WindowListF = clone(_SYS_WINDOW_LIST_); WindowListF.reverse();