From a9bc7819f4f7e66159a93e955944728c25ba3e53 Mon Sep 17 00:00:00 2001
From: C3204 <zhengyabo@lanpucloud.cn>
Date: 星期三, 07 一月 2026 14:10:11 +0800
Subject: [PATCH] 优化相机管理和界面布局 - 在 `CreateCameraForm.cs` 中添加对 `LBCameras` 的引用,并修复相机创建逻辑。 - 调整 `VisionForm.Designer.cs` 和 `2DCameraForm.Designer.cs` 中多个控件的大小和位置,改善界面布局。 - 在 `VisionForm.cs` 中添加对 `LBCameras` 的引用以支持新相机类型。 - 注释掉 `PHM6000Sensor.cs` 和 `PHM6000Profiler.cs` 中与相机信息获取相关的 P/Invoke 方法。 - 重构 `LBCamera.cs`,添加新的相机初始化和参数设置逻辑,确保与 PHM6000 SDK 的兼容性。 - 移除 `PHM6000Camera.cs` 中与 `PHM6000Camera` 相关的代码,简化相机管理逻辑。 Merge branch 'master' of http://lanpucloud.cn:1111/r/~zhengyabo/LB_TyreAppearanceInspectionSoftware
---
LB_SmartVision/Forms/Pages/ProcessPage/ProcessControl.cs | 47 +++++++++++++++++++++++++----------------------
1 files changed, 25 insertions(+), 22 deletions(-)
diff --git a/LB_SmartVision/Forms/Pages/ProcessPage/ProcessControl.cs b/LB_SmartVision/Forms/Pages/ProcessPage/ProcessControl.cs
index 43158ae..1642a11 100644
--- a/LB_SmartVision/Forms/Pages/ProcessPage/ProcessControl.cs
+++ b/LB_SmartVision/Forms/Pages/ProcessPage/ProcessControl.cs
@@ -1,7 +1,8 @@
锘縰sing HalconDotNet;
+using LB_SmartVision.Forms.Pages.SettingPage;
using LB_SmartVision.ProcessRun;
using LB_VisionControl;
-using Layout = LB_SmartVision.Forms.Pages.SettingPage.Layout;
+
namespace LB_SmartVision.Forms.Pages.ProcessPage
{
@@ -42,6 +43,11 @@
if (ProcessRunBll != null)
this.label1.Text = $"鎬绘暟锛歿ProcessRunBll.total}";
+ this.isClosed = false ;
+ var TaskPhotoContinue = Task.Factory.StartNew(() =>
+ {
+ ThreadCircleRun();
+ });
}
public void SetTitle(string title)
@@ -101,7 +107,7 @@
return false;
}
- if (isCircleRuning || ProcessRunBll.bPruning)
+ if (isCircleRuning || ProcessRunBll.bRuning)
ProcessRunBll.LogInfo($"{ProcessRunBll.Name}姝e湪杩愯", LogInfoType.ERROR);
ProcessRunBll.Run();
@@ -148,37 +154,36 @@
if (isCircleRuning)
{
- threadCircleRun = new Thread(ThreadCircleRun);
- threadCircleRun.IsBackground = true;
- threadCircleRun.Start();
+ this.mAutoResetEvent.Set();
}
else
{
isCircleRuning = false;
- threadCircleRun.Abort();
}
+ if (!isCircleRuning)
+ {
+ ProcessRunBll.LogInfo($"{ProcessRunBll.Name}鍏抽棴杩炵画杩愯", LogInfoType.PASS);
+ return;
+ }
+
+ ProcessRunBll.LogInfo($"{ProcessRunBll.Name}寮�鍚繛缁繍琛�", LogInfoType.WARN);
}
catch { }
}
-
- Thread threadCircleRun = null;
+ private AutoResetEvent mAutoResetEvent = new AutoResetEvent(false);
+ bool isClosed = false;
void ThreadCircleRun()
{
- if (!isCircleRuning)
+ while (!isClosed)
{
- ProcessRunBll.LogInfo($"{ProcessRunBll.Name}鍏抽棴杩炵画杩愯", LogInfoType.PASS);
- return;
- }
-
- ProcessRunBll.LogInfo($"{ProcessRunBll.Name}寮�鍚繛缁繍琛�", LogInfoType.WARN);
-
- while (isCircleRuning)
- {
- //this.BeginInvoke(new Action(() =>
- //{
try
{
+ if (isCircleRuning == false)
+ {
+ this.mAutoResetEvent.WaitOne();
+ }
+
ProcessRunBll.LogInfo($"{ProcessRunBll.Name}寮�濮嬭繍琛�", LogInfoType.WARN);
ClearObj();
bool result = ProcessRunBll.Run();
@@ -191,9 +196,7 @@
ShowHoImage(RecordImage);
}
catch { }
- //}));
-
- Thread.Sleep(100);
+ Thread.Sleep(33);
}
}
--
Gitblit v1.9.3