From 44d6b49d86f8c531cbed718a8c109f3bc2db2177 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期三, 09 八月 2023 16:27:23 +0800 Subject: [PATCH] 2023年08月09日16:27:16 --- HDL_ON/UI/UI2/FuntionControlView/Aks/SxqPage.cs | 88 +++++++++++++++++++++++++++++++++++++------- 1 files changed, 74 insertions(+), 14 deletions(-) diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/SxqPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/SxqPage.cs index a0bc204..1f0ce23 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Aks/SxqPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/SxqPage.cs @@ -9,6 +9,8 @@ using HDL_ON.UI.UI2.Intelligence.Automation; using System.Linq; using HDL_ON.UI.UI2.FuntionControlView.Aks.CommonView; +using HDL_ON.UI.UI2.FuntionControlView.Aks.Entity; +using HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock; namespace HDL_ON.UI.UI2.FuntionControlView.Aks { @@ -28,8 +30,24 @@ public VerticalScrolViewLayout vv; - public SxqPage() + /// <summary> + /// 鏃跺簭鍣ㄥ垪琛� + /// </summary> + private List<SequencerEntity> sequencerList; + + /// <summary> + /// 璁惧id + /// </summary> + private string deviceId; + /// <summary> + /// + /// </summary> + /// <param name="sequencerList">鏃跺簭鍣ㄥ垪琛�</param> + /// <param name="deviceId">璁惧id</param> + public SxqPage(List<SequencerEntity> sequencerList, string deviceId) { + this.sequencerList = sequencerList; + this.deviceId = deviceId; } public void Show() { @@ -68,17 +86,20 @@ this.AddChidren(vv); BaseFramLayout fLayout = new BaseFramLayout(); this.vv.AddChidren(fLayout); - var mList = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18 }; int line = 0; int xCount = 0; int rowNumber = 4; - for (int i = 1; i <= mList.Count; i++) + var list1 = this.sequencerList.FindAll((o) => o.type == 1); + for (int i = 1; i <= list1.Count; i++) { + var sequencer = list1[i - 1]; + VerticalBoutonFLayout buttonFram = new VerticalBoutonFLayout(); buttonFram.AddView(fLayout); - buttonFram.Tag = i - 1; - buttonFram.Y = Application.GetRealWidth(16)+ Application.GetRealHeight((VerticalBoutonFLayout.heightFrameLayout+16) * line); - buttonFram.X = Application.GetRealWidth(16) + Application.GetRealWidth((VerticalBoutonFLayout.widthFrameLayout+8) * xCount); + buttonFram.Tag = sequencer; + buttonFram.Y = Application.GetRealWidth(16) + Application.GetRealHeight((VerticalBoutonFLayout.heightFrameLayout + 16) * line); + buttonFram.X = Application.GetRealWidth(16) + Application.GetRealWidth((VerticalBoutonFLayout.widthFrameLayout + 8) * xCount); + buttonFram.btnName.Text = sequencer.name; xCount++; if (i % rowNumber == 0) { @@ -87,34 +108,59 @@ } buttonFram.SetONClickListener((fl, btn) => { - //action.Invoke((int)buttonFram.Tag); + if (buttonFram.Tag != null || buttonFram.Tag is SequencerEntity) + { + + var sequ = (SequencerEntity)buttonFram.Tag; + SequencerControlExecute(sequ.seqId, "on"); + } + }); buttonFram.SetOFFClickListener((fl, btn) => { - //action.Invoke((int)buttonFram.Tag); + if (buttonFram.Tag != null || buttonFram.Tag is SequencerEntity) + { + var sequ = (SequencerEntity)buttonFram.Tag; + SequencerControlExecute(sequ.seqId, "off"); + } }); } fLayout.AdjustRealHeight(16); - List<string> list = new List<string>() { - "A","B","C","D" - }; - for (int i = 0; i < list.Count; i++) + var list2 = this.sequencerList.FindAll((o) => o.type == 2); + for (int i = 0; i < list2.Count; i++) { Button btnName = new Button { Y = fLayout.Height, - X = Application.GetRealWidth(16) + Application.GetRealWidth((VerticalBoutonFLayout.widthFrameLayout+8) * i), + X = Application.GetRealWidth(16) + Application.GetRealWidth((VerticalBoutonFLayout.widthFrameLayout + 8) * i), Width = Application.GetRealWidth(80), Height = Application.GetRealHeight(44), TextSize = TextSize.Text14, TextColor = MusicColor.TextColor, TextAlignment = TextAlignment.Center, - Text = list[i], + Text = list2[i].name, BackgroundColor = MusicColor.ViewColor, + SelectedBackgroundColor = MusicColor.MusicTxet14SelectedColor, Radius = (uint)Application.GetRealHeight(12), + Padding=new Padding(0,5,0,5), + Tag = list2[i] + }; + btnName.MouseDownEventHandler += (sen, e) => + { + btnName.IsSelected = true; + if (btnName.Tag != null || btnName.Tag is SequencerEntity) + { + var sequ = (SequencerEntity)btnName.Tag; + SequencerControlExecute(sequ.seqId, "on"); + } + }; + btnName.MouseUpEventHandler += (sen, e) => + { + btnName.IsSelected = false; + //寮硅捣棰滆壊 }; fLayout.AddChidren(btnName); } @@ -131,5 +177,19 @@ this.RemoveFromParent(); }; } + + /// <summary> + /// 鏃跺簭鍣ㄦ寚浠ゅ彂閫� + /// </summary> + /// <param name="seqId">鏃跺簭鍣╥d</param> + /// <param name="onOff">鏃跺簭鍣ㄥ紑鍏�</param> + private void SequencerControlExecute(string seqId, string onOff) + { + CommonMethod.Current.SunThread(() => + { + SendMethod.Current.SequencerExecute(this.deviceId, seqId, onOff); + }); + } + } } -- Gitblit v1.8.0