From 351086486441b80cfe71550b43cbe1e4dc440f5d Mon Sep 17 00:00:00 2001
From: chenluhua1980 <Chenluhua@qq.com>
Date: 星期一, 09 二月 2026 13:58:30 +0800
Subject: [PATCH] 1.状态图右侧数据,Slot不刷新,修复刷新逻辑。

---
 SourceCode/Bond/Servo/CPageGraph1.cpp |   27 +++++++++++++++++++++++----
 1 files changed, 23 insertions(+), 4 deletions(-)

diff --git a/SourceCode/Bond/Servo/CPageGraph1.cpp b/SourceCode/Bond/Servo/CPageGraph1.cpp
index 2427181..d34fd63 100644
--- a/SourceCode/Bond/Servo/CPageGraph1.cpp
+++ b/SourceCode/Bond/Servo/CPageGraph1.cpp
@@ -359,6 +359,14 @@
 					}
 				}
 			}
+			else if (RX_CODE_EQ_DATA_CHANGED == code
+				|| RX_CODE_LOADPORT_STATUS_CHANGED == code) {
+				// 璁惧鏁版嵁鍙樺寲鏃讹紝鍙婃椂鍒锋柊鏍煎瓙涓庡彸渚lot琛紝閬垮厤鍙湪鐐瑰嚮鏃舵洿鏂颁竴娆�
+				UpdateSlotBars();
+				if (m_pSelectedEquipment != nullptr) {
+					UpdateSlotTable(m_pSelectedEquipment);
+				}
+			}
 
 			pAny->release();
 			}, [&]() -> void {
@@ -407,10 +415,14 @@
 	int boxSize = GetPrivateProfileIntA("Graph1", "BoxSize", 56, iniPath.c_str());
 	if (boxSize < 40) boxSize = 40;
 	if (boxSize > 80) boxSize = 80;
-	int slotSize = GetPrivateProfileIntA("Graph1", "SlotSize", 6, iniPath.c_str());
-	if (slotSize < 2) slotSize = 2;
-	if (slotSize > 12) slotSize = 12;
-	m_pGraph->SetSlotBarSize(slotSize);
+	int slotSizeDefault = GetPrivateProfileIntA("Graph1", "SlotSize", 6, iniPath.c_str());
+	int slotSize8 = GetPrivateProfileIntA("Graph1", "SlotSize8", slotSizeDefault, iniPath.c_str());
+	int slotSizeOther = GetPrivateProfileIntA("Graph1", "SlotSizeOther", slotSizeDefault, iniPath.c_str());
+	if (slotSize8 < 2) slotSize8 = 2;
+	if (slotSize8 > 12) slotSize8 = 12;
+	if (slotSizeOther < 2) slotSizeOther = 2;
+	if (slotSizeOther > 12) slotSizeOther = 12;
+	m_pGraph->SetSlotBarSizeByCount(slotSize8, slotSizeOther);
 	int armBoxSize = GetPrivateProfileIntA("Graph1", "ArmBoxSize", boxSize, iniPath.c_str());
 	if (armBoxSize < 30) armBoxSize = 30;
 	if (armBoxSize > 80) armBoxSize = 80;
@@ -1016,6 +1028,9 @@
 		SERVO::CEFEM* pEFEM = (SERVO::CEFEM*)theApp.m_model.m_master.getEquipment(EQ_ID_EFEM);
 		if (!pEFEM || !pEFEM->isAlive()) {
 			UpdateSlotBars();
+			if (m_pSelectedEquipment != nullptr) {
+				UpdateSlotTable(m_pSelectedEquipment);
+			}
 			return;
 		}
 
@@ -1041,6 +1056,10 @@
 		}
 
 		UpdateSlotBars();
+		if (m_pSelectedEquipment != nullptr) {
+			// 瀹氭椂鍏滃簳锛氬嵆浣挎紡鎺変簨浠堕�氱煡锛屼篃纭繚鍙充晶Slot琛ㄦ寔缁埛鏂�
+			UpdateSlotTable(m_pSelectedEquipment);
+		}
 	}
 	else if (nIDEvent == TIMER_ID_ROBOT_ANIMATION) {
 		if (!m_bIsRobotMoving) {

--
Gitblit v1.9.3