109 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			109 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
|  | /* | ||
|  | 文件名:3_Top_tool.nut | ||
|  | 路径:User/UI/Window/3_Top_tool.nut | ||
|  | 创建日期:2024-12-21	23:43 | ||
|  | 文件用途: 顶部工具条 | ||
|  | */ | ||
|  | 
 | ||
|  | class _Top_tool extends Yosin_Window { | ||
|  | 
 | ||
|  |     //是否为独立窗口 | ||
|  |     IsIndependent = false; | ||
|  | 
 | ||
|  |     timeTextActor = null; | ||
|  | 
 | ||
|  |     constructor(gObjectId, gX, gY, gWidth, gHeight, gTitleH) { | ||
|  |         base.constructor(gObjectId, gX, gY, gWidth, gHeight, gTitleH); | ||
|  | 
 | ||
|  |         //注册绘制 | ||
|  |         RegisterDraw(); | ||
|  |         //注册控件 | ||
|  |         RegisterWidget(); | ||
|  |     } | ||
|  | 
 | ||
|  |     function RegisterWidget() { | ||
|  |         local background = Yosin_EmeStretch(0, 0, 650, 20, "sprite/interface/lenheartwindowcommon.img", 612); | ||
|  |         AddUIChild(background); | ||
|  | 
 | ||
|  |         local timeBackGround = Yosin_EmeStretch(14, 2, 90, 14, "sprite/interface/lenheartwindowcommon.img", 615); | ||
|  |         AddUIChild(timeBackGround); | ||
|  | 
 | ||
|  | 
 | ||
|  |         // 时间 | ||
|  |         timeTextActor = FontAssetManager.GenerateNormal(getTimeString(), true, { | ||
|  |             color = sq_RGBA(200, 195, 169, 255) | ||
|  |         }); | ||
|  |         timeTextActor.SetPosition(20, 4); | ||
|  |         Addchild(timeTextActor); | ||
|  | 
 | ||
|  |         // 三角 | ||
|  |         local jiao = CL_SpriteObject("sprite/interface/lenheartwindowcommon.img", 622); | ||
|  |         jiao.SetPosition(85, 7.5); | ||
|  |         Addchild(jiao); | ||
|  | 
 | ||
|  |         // 最小化 | ||
|  |         local minButton = _Top_tool_Button(576, 1, 22, 16 "sprite/interface/lenheartwindowcommon.img", 618); | ||
|  |         AddUIChild(minButton); | ||
|  |         // 最大化 | ||
|  |         local maxButton = _Top_tool_Button(598, 1, 22, 16 "sprite/interface/lenheartwindowcommon.img", 628); | ||
|  |         AddUIChild(maxButton); | ||
|  |         // 关闭 | ||
|  |         local closeButton = _Top_tool_Button(620, 1, 22, 16 "sprite/interface/lenheartwindowcommon.img", 624); | ||
|  |         AddUIChild(closeButton); | ||
|  | 
 | ||
|  |     } | ||
|  | 
 | ||
|  |     function RegisterDraw() { | ||
|  | 
 | ||
|  |     } | ||
|  | 
 | ||
|  | 
 | ||
|  |     function getTimeString() { | ||
|  |         local date = date(time()); | ||
|  |         local timeStr = ""; | ||
|  |         if (date.hour >= 12) { | ||
|  |             timeStr = "PM " + (date.hour - 12).tostring() + ":" + date.min.tostring(); | ||
|  |         }else{ | ||
|  |             timeStr = "AM " + date.hour.tostring() + ":" + date.min.tostring(); | ||
|  |         } | ||
|  |         return timeStr; | ||
|  |     } | ||
|  | 
 | ||
|  | 
 | ||
|  |     //逻辑入口 | ||
|  |     function Proc(Dt) { | ||
|  |         SyncPos(X, Y); | ||
|  |         base.Proc(Dt); | ||
|  | 
 | ||
|  |         if (time() % 60 ==  0){ | ||
|  |             timeTextActor.SetText(getTimeString()); | ||
|  |         } | ||
|  | 
 | ||
|  |     } | ||
|  | 
 | ||
|  | } | ||
|  | 
 | ||
|  | 
 | ||
|  | class _Top_tool_Button extends Yosin_BaseButton { | ||
|  | 
 | ||
|  |     border = null; | ||
|  | 
 | ||
|  |     constructor(X, Y, W, H, Path, Idx) { | ||
|  |         base.constructor(X, Y, W, H, Path, Idx); | ||
|  | 
 | ||
|  |         border = CL_SpriteObject("sprite/interface/lenheartwindowcommon.img", 623); | ||
|  |         Addchild(border); | ||
|  | 
 | ||
|  |     } | ||
|  | 
 | ||
|  |     //逻辑入口 | ||
|  |     function Proc(obj) { | ||
|  |         base.Proc(obj); | ||
|  |         border.SetVisible(isLBDown); | ||
|  |     } | ||
|  | 
 | ||
|  | } | ||
|  | 
 | ||
|  | 
 | ||
|  | 
 |