From 0468353b5e2265935846b299afc38bb34ae23e24 Mon Sep 17 00:00:00 2001
From: C3204 <zhengyabo@lanpucloud.cn>
Date: 星期一, 19 一月 2026 16:49:49 +0800
Subject: [PATCH] 完善运动控制参数存储以及加载
---
LB_SmartVision/Forms/Pages/CommunicatorPage/CommunicatorsEditPage.cs | 48 ++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 44 insertions(+), 4 deletions(-)
diff --git a/LB_SmartVision/Forms/Pages/CommunicatorPage/CommunicatorsEditPage.cs b/LB_SmartVision/Forms/Pages/CommunicatorPage/CommunicatorsEditPage.cs
index 30de3e4..3a0a804 100644
--- a/LB_SmartVision/Forms/Pages/CommunicatorPage/CommunicatorsEditPage.cs
+++ b/LB_SmartVision/Forms/Pages/CommunicatorPage/CommunicatorsEditPage.cs
@@ -34,7 +34,9 @@
if (string.IsNullOrEmpty(ClassName) || string.IsNullOrEmpty(IP) || string.IsNullOrEmpty(PORT))
return;
- string CommunicatorConnectionString = $"({ClassName}){IP}:{PORT}";
+ string DataType = item.Value.CommunicatorConnections.Contains("鏁版嵁绫诲瀷") ?
+ item.Value.CommunicatorConnections["鏁版嵁绫诲瀷"].ToString() : "String";
+ string CommunicatorConnectionString = $"({ClassName}){IP}:{PORT} [{DataType}]";
UserItem flow = new UserItem(new string[] { "娴嬭瘯", "鍒锋柊", "绉婚櫎", "閲嶅懡鍚�" });
//flow.SetDPIScale();
@@ -69,7 +71,9 @@
if (string.IsNullOrEmpty(ClassName) || string.IsNullOrEmpty(IP) || string.IsNullOrEmpty(PORT))
return;
- string CommunicatorConnectionString = $"({ClassName}){IP}:{PORT}";
+ string DataType = communicator.CommunicatorConnections.Contains("鏁版嵁绫诲瀷") ?
+ communicator.CommunicatorConnections["鏁版嵁绫诲瀷"].ToString() : "String";
+ string CommunicatorConnectionString = $"({ClassName}){IP}:{PORT} [{DataType}]";
GlobalVar.dicCommunicators.TryAdd(Name, communicator);
communicator.CommunicatorName = Name;
@@ -126,8 +130,34 @@
if (GlobalVar.dicCommunicators.ContainsKey(name))
{
- CommunicatorForm cameraForm = new CommunicatorForm(GlobalVar.dicCommunicators[name], name);
- cameraForm.Show();
+ CommunicatorForm communicatorFForm = new CommunicatorForm(GlobalVar.dicCommunicators[name], name);
+ communicatorFForm.CommunicatorChanged += CommunicatorFForm_CommunicatorChanged;
+ communicatorFForm.Show();
+ }
+ }
+ }
+
+ private void CommunicatorFForm_CommunicatorChanged(BaseCommunicator communicator)
+ {
+ if (this.InvokeRequired)
+ {
+ this.Invoke(new Action<BaseCommunicator>(CommunicatorFForm_CommunicatorChanged), communicator);
+ return;
+ }
+
+ for (int i = 0; i < uiFlowLayoutPanel1.Controls.Count; i++)
+ {
+ if (uiFlowLayoutPanel1.Controls[i] is UserItem flow && flow.Name == communicator.CommunicatorName)
+ {
+ string ClassName = communicator.GetType().Name;
+ string IP = communicator.CommunicatorConnections["鍦板潃"].ToString();
+ string PORT = communicator.CommunicatorConnections["绔彛"].ToString();
+ string DataType = communicator.CommunicatorConnections.Contains("鏁版嵁绫诲瀷") ?
+ communicator.CommunicatorConnections["鏁版嵁绫诲瀷"].ToString() : "String";
+
+ flow.Text = $"({ClassName}){IP}:{PORT} [{DataType}]";
+ flow.Refresh();
+ break;
}
}
}
@@ -176,6 +206,16 @@
if (GlobalVar.dicCommunicators.ContainsKey(oldName))
GlobalVar.dicCommunicators.TryRename(oldName, newName);
+ foreach (var item in GlobalVar.dicMotionControlData.Keys)
+ {
+ foreach (var item1 in GlobalVar.dicMotionControlData[item].Keys)
+ {
+ if (GlobalVar.dicMotionControlData[item][item1].CommunicatorsName.Contains(oldName))
+ {
+ GlobalVar.dicMotionControlData[item][item1].CommunicatorsName = newName;
+ }
+ }
+ }
flow.Refresh();
}
--
Gitblit v1.9.3