From 462979811548ec521c064059e0d2f3270314cbba Mon Sep 17 00:00:00 2001 From: zqm Date: Fri, 31 Oct 2025 13:54:01 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=B3=BB=E7=BB=9F=E7=8A=B6?= =?UTF-8?q?=E6=80=81=E6=9B=B4=E6=96=B0=E6=B5=81=E7=A8=8B=E7=AC=AC6?= =?UTF-8?q?=E7=82=B9=EF=BC=9A=E6=B8=A9=E5=BA=A6=E6=95=B0=E6=8D=AE=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E3=80=81Ping=E7=8A=B6=E6=80=81=E5=8F=98=E5=8C=96?= =?UTF-8?q?=E3=80=81=E8=BF=9E=E6=8E=A5=E7=8A=B6=E6=80=81=E5=8F=98=E5=8C=96?= =?UTF-8?q?=E3=80=81=E5=9B=BE=E5=83=8F=E6=9B=B4=E6=96=B0=E6=97=B6=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=9A=82=E5=81=9C=E7=8A=B6=E6=80=81=E6=A3=80=E6=9F=A5?= =?UTF-8?q?=EF=BC=8C=E7=A1=AE=E4=BF=9D=E5=8F=AA=E5=9C=A8=E9=9D=9E=E6=9A=82?= =?UTF-8?q?=E5=81=9C=E7=8A=B6=E6=80=81=E4=B8=8B=E8=B0=83=E7=94=A8=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=EF=BC=8C=E6=9A=82=E5=81=9C=E7=8A=B6=E6=80=81=E4=B8=8B?= =?UTF-8?q?=E4=B8=8D=E6=9B=B4=E6=96=B0Info=E5=92=8CUI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CS/Framework4.0/Toprie/Toprie/Camera.cs | 43 +++++++++++++------ 1 file changed, 30 insertions(+), 13 deletions(-) diff --git a/Windows/CS/Framework4.0/Toprie/Toprie/Camera.cs b/Windows/CS/Framework4.0/Toprie/Toprie/Camera.cs index bf769df..b1f92d8 100644 --- a/Windows/CS/Framework4.0/Toprie/Toprie/Camera.cs +++ b/Windows/CS/Framework4.0/Toprie/Toprie/Camera.cs @@ -110,8 +110,11 @@ namespace JoyD.Windows.CS.Toprie Console.WriteLine("温度数据已更新"); - // 按照README中要求的修改流程第4点:温度数据更新时,调用更新Info - UpdateInfo(); + // 按照README中要求的修改流程第4点和第6点:温度数据更新时,只在非暂停状态下调用更新Info + if (!_isPaused) + { + UpdateInfo(); + } } catch (Exception ex) { @@ -683,13 +686,15 @@ namespace JoyD.Windows.CS.Toprie return; } - // 按照README中要求的修改流程第5点:图像更新时,保存LastImage,调用更新到UI - // 无论是否暂停,都应该保存LastImage并调用更新到UI + // 按照README中要求的修改流程第5点和第6点:图像更新时,保存LastImage,只在非暂停状态下调用更新到UI this.BeginInvoke(new Action(() => { try { - UpdateImageOnUI(); + if (!_isPaused) + { + UpdateImageOnUI(); + } } catch (Exception ex) { @@ -1016,8 +1021,11 @@ namespace JoyD.Windows.CS.Toprie } } - // 设置连接状态后,调用更新Info - UpdateInfo(); + // 按照README中要求的修改流程第2点和第6点:连接状态变化时,只在非暂停状态下调用更新Info + if (!_isPaused) + { + UpdateInfo(); + } break; case ConnectionStatus.Disconnected: Console.WriteLine("设备已断开连接"); @@ -1044,8 +1052,11 @@ namespace JoyD.Windows.CS.Toprie Console.WriteLine("温度数据实例已清空"); } - // 设置连接状态后,调用更新Info - UpdateInfo(); + // 按照README中要求的修改流程第2点和第6点:连接状态变化时,只在非暂停状态下调用更新Info + if (!_isPaused) + { + UpdateInfo(); + } if (!string.IsNullOrEmpty(e.DeviceInfo)) { @@ -1064,8 +1075,11 @@ namespace JoyD.Windows.CS.Toprie Console.WriteLine($"正在重新连接设备...{(!string.IsNullOrEmpty(e.DeviceInfo) ? " " + e.DeviceInfo : "")}"); ShowError(string.Empty); // 清除之前的错误信息 - // 设置重连状态后,调用更新Info - UpdateInfo(); + // 按照README中要求的修改流程第2点和第6点:连接状态变化时,只在非暂停状态下调用更新Info + if (!_isPaused) + { + UpdateInfo(); + } break; } } @@ -1614,9 +1628,12 @@ namespace JoyD.Windows.CS.Toprie /// 是否可Ping通 private void UpdatePingState(bool isPingable) { - // 按照README中要求的修改流程第3点:Ping通状态变化时,修改Ping状态,调用更新Info + // 按照README中要求的修改流程第3点和第6点:Ping通状态变化时,修改Ping状态,只在非暂停状态下调用更新Info IsDevicePingable = isPingable; - UpdateInfo(); + if (!_isPaused) + { + UpdateInfo(); + } } ///