From 4d1e6979820d9aaf27890a833ae0fcb6959e8637 Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期四, 27 二月 2025 15:33:03 +0800
Subject: [PATCH] 1.完善警告信息,打通CC-Link获取警告信息到通过SECS上报警告信息的路径。

---
 SourceCode/Bond/Servo/ServoDlg.cpp |   33 +++++++++++++++++++++++++++++++--
 1 files changed, 31 insertions(+), 2 deletions(-)

diff --git a/SourceCode/Bond/Servo/ServoDlg.cpp b/SourceCode/Bond/Servo/ServoDlg.cpp
index 39da8c6..f6b355c 100644
--- a/SourceCode/Bond/Servo/ServoDlg.cpp
+++ b/SourceCode/Bond/Servo/ServoDlg.cpp
@@ -9,6 +9,7 @@
 #include "Common.h"
 #include "Log.h"
 #include "SecsTestDlg.h"
+#include "AlarmDlg.h"
 #include <chrono>
 #include <thread>
 #include <cmath>
@@ -84,6 +85,7 @@
 	m_crBkgnd = APPDLG_BACKGROUND_COLOR;
 	m_hbrBkgnd = nullptr;
 	m_bShowLogWnd = FALSE;
+	m_bShowAlarmWnd = FALSE;
 	m_bIsRobotMoving = FALSE;
 	m_pLogDlg = nullptr;
 	m_pTerminalDisplayDlg = nullptr;
@@ -94,6 +96,7 @@
 {
 	CDialogEx::DoDataExchange(pDX);
 	DDX_Control(pDX, IDC_BUTTON_LOG, m_btnLog);
+	DDX_Control(pDX, IDC_BUTTON_ALARM, m_btnAlarm);
 }
 
 BEGIN_MESSAGE_MAP(CServoDlg, CDialogEx)
@@ -122,6 +125,7 @@
 	ON_WM_INITMENUPOPUP()
 	ON_WM_TIMER()
 	ON_WM_ERASEBKGND()
+	ON_BN_CLICKED(IDC_BUTTON_ALARM, &CServoDlg::OnBnClickedButtonAlarm)
 END_MESSAGE_MAP()
 
 
@@ -307,6 +311,7 @@
 	InitRxWindows();
 	OnBnClickedButtonLog();
 	UpdateLogBtn();
+	UpdateAlarmBtn();
 	Resize();
 
 
@@ -567,6 +572,17 @@
 	m_btnLog.Invalidate();
 }
 
+void CServoDlg::UpdateAlarmBtn()
+{
+	m_btnAlarm.SetFrameColor(BS_NORMAL, BTN_ALARM_FRAME_NORMAL);
+	m_btnAlarm.SetFrameColor(BS_HOVER, BTN_ALARM_FRAME_HOVER);
+	m_btnAlarm.SetFrameColor(BS_PRESS, BTN_ALARM_FRAME_PRESS);
+	m_btnAlarm.SetBkgndColor(BS_NORMAL, m_bShowAlarmWnd ? BTN_ALARM_BKGND_PRESS : BTN_ALARM_BKGND_NORMAL);
+	m_btnAlarm.SetBkgndColor(BS_HOVER, BTN_ALARM_BKGND_HOVER);
+	m_btnAlarm.SetBkgndColor(BS_PRESS, BTN_ALARM_BKGND_PRESS);
+	m_btnAlarm.Invalidate();
+}
+
 void CServoDlg::UpdateRobotPosition(float percentage)
 {
 	// 限制百分比范围在 [0, 1] 之间
@@ -676,12 +692,12 @@
 
 	switch (status) {
 	case ONLINE:
-		newBackgroundColor = RGB(255, 0, 0);
+		newBackgroundColor = RGB(0, 255, 0);
 		newFrameColor1 = RGB(22, 22, 22);
 		newFrameColor2 = RGB(255, 127, 39);
 		break;
 	case OFFLINE:
-		newBackgroundColor = RGB(0, 255, 0);
+		newBackgroundColor = RGB(255, 0, 0);
 		newFrameColor1 = RGB(22, 22, 22);
 		newFrameColor2 = RGB(255, 127, 39);
 		break;
@@ -723,6 +739,11 @@
 
 	x = 8;
 	pItem = GetDlgItem(IDC_BUTTON_LOG);
+	pItem->GetClientRect(&rcItem);
+	pItem->MoveWindow(x, rcClient.bottom - 8 - rcItem.Height(), rcItem.Width(), rcItem.Height());
+
+	x = 20 + rcItem.Width();
+	pItem = GetDlgItem(IDC_BUTTON_ALARM);
 	pItem->GetClientRect(&rcItem);
 	pItem->MoveWindow(x, rcClient.bottom - 8 - rcItem.Height(), rcItem.Width(), rcItem.Height());
 }
@@ -799,3 +820,11 @@
 	
 	return CDialogEx::OnEraseBkgnd(pDC);
 }
+
+
+void CServoDlg::OnBnClickedButtonAlarm()
+{
+	// TODO: 在此添加控件通知处理程序代码
+	CAlarmDlg dlg;
+	dlg.DoModal();
+}

--
Gitblit v1.9.3