From 260b30211b44fea725a5a6fb5d72c1d0581eccbb Mon Sep 17 00:00:00 2001
From: chenluhua1980 <Chenluhua@qq.com>
Date: 星期四, 11 十二月 2025 17:22:08 +0800
Subject: [PATCH] 1.状态栏实时显示CIM连接状态;
---
SourceCode/Bond/Servo/CMyStatusbar.h | 2 ++
SourceCode/Bond/Servo/CMyStatusbar.cpp | 22 +++++++++++++++++++++-
SourceCode/Bond/Servo/ServoDlg.cpp | 12 ++++++------
SourceCode/Bond/Servo/Common.h | 2 ++
4 files changed, 31 insertions(+), 7 deletions(-)
diff --git a/SourceCode/Bond/Servo/CMyStatusbar.cpp b/SourceCode/Bond/Servo/CMyStatusbar.cpp
index 589a8cc..f38821f 100644
--- a/SourceCode/Bond/Servo/CMyStatusbar.cpp
+++ b/SourceCode/Bond/Servo/CMyStatusbar.cpp
@@ -80,6 +80,24 @@
SetDlgItemText(IDC_BUTTON_CIM, pszText);
}
+void CMyStatusbar::setCurTaskBtnColors(COLORREF face, COLORREF frame, COLORREF text)
+{
+ m_btnCurTask.SetFaceColor(face);
+ m_btnCurTask.SetFrameColor(frame);
+ m_btnCurTask.SetTextColor(text);
+ Invalidate();
+ UpdateWindow();
+}
+
+void CMyStatusbar::setCimBtnColors(COLORREF face, COLORREF frame, COLORREF text)
+{
+ m_btnCim.SetFaceColor(face);
+ m_btnCim.SetFrameColor(frame);
+ m_btnCim.SetTextColor(text);
+ Invalidate();
+ UpdateWindow();
+}
+
BOOL CMyStatusbar::OnInitDialog()
{
CDialogEx::OnInitDialog();
@@ -91,12 +109,14 @@
m_btnCurTask.SetFrameColor(m_crBkgnd);
m_btnCurTask.SetFrameColor(BS_HOVER, RGB(218, 218, 218));
m_btnCurTask.SetFrameColor(BS_PRESS, RGB(168, 168, 168));
+ m_btnCurTask.SetTextColor(m_crForeground);
m_btnCim.SubclassDlgItem(IDC_BUTTON_CIM, this);
m_btnCim.SetFaceColor(m_crBkgnd);
m_btnCim.SetFrameColor(m_crBkgnd);
m_btnCim.SetFrameColor(BS_HOVER, RGB(218, 218, 218));
m_btnCim.SetFrameColor(BS_PRESS, RGB(168, 168, 168));
+ m_btnCim.SetTextColor(m_crForeground);
return TRUE; // return TRUE unless you set the focus to a control
// 寮傚父: OCX 灞炴�ч〉搴旇繑鍥� FALSE
@@ -192,4 +212,4 @@
pItem->GetClientRect(rcItem);
pItem->MoveWindow(x, (rcClient.Height() - rcItem.Height()) / 2, rcItem.Width(), rcItem.Height());
x += rcItem.Width();
-}
\ No newline at end of file
+}
diff --git a/SourceCode/Bond/Servo/CMyStatusbar.h b/SourceCode/Bond/Servo/CMyStatusbar.h
index 4afaaa4..b1fdfa8 100644
--- a/SourceCode/Bond/Servo/CMyStatusbar.h
+++ b/SourceCode/Bond/Servo/CMyStatusbar.h
@@ -22,6 +22,8 @@
void setRunTimeText(const char* pszText);
void setCurTaskBtnText(const char* pszText);
void setCimBtnText(const char* pszText);
+ void setCurTaskBtnColors(COLORREF face, COLORREF frame, COLORREF text);
+ void setCimBtnColors(COLORREF face, COLORREF frame, COLORREF text);
private:
void Resize();
diff --git a/SourceCode/Bond/Servo/Common.h b/SourceCode/Bond/Servo/Common.h
index 3031752..a491039 100644
--- a/SourceCode/Bond/Servo/Common.h
+++ b/SourceCode/Bond/Servo/Common.h
@@ -46,6 +46,8 @@
#define STATUSBAR_BK_STARTING RGB(58, 127, 78)
#define STATUSBAR_BK_RUNNING RGB(34, 177, 76)
#define STATUSBAR_BK_ALARM RGB(255, 127, 39)
+#define CIM_STATUS_BK_SELECTED STATUSBAR_BK_RUNNING
+#define CIM_STATUS_BK_DISCONNECTED STATUSBAR_BK_NORMAL
/* LOG BTN */
#define BTN_LOG_FRAME_NORMAL RGB(88, 88, 88)
diff --git a/SourceCode/Bond/Servo/ServoDlg.cpp b/SourceCode/Bond/Servo/ServoDlg.cpp
index c886f66..c3d42da 100644
--- a/SourceCode/Bond/Servo/ServoDlg.cpp
+++ b/SourceCode/Bond/Servo/ServoDlg.cpp
@@ -306,18 +306,18 @@
if (STATE::NOT_CONNECTED == state) {
m_pMyStatusbar->setCimBtnText("Disconnected");
- //m_labelPassiveState.setBackground(DISCONNECTED_BACKGROUND);
- //m_labelPassiveState.setForeground(DISCONNECTED_FOREGROUND, TRUE);
+ m_pMyStatusbar->setCimBtnColors(
+ CIM_STATUS_BK_DISCONNECTED, CIM_STATUS_BK_DISCONNECTED, RGB(0, 0, 0));
}
else if (STATE::NOT_SELECTED == state) {
m_pMyStatusbar->setCimBtnText("Not Selected");
- //m_labelPassiveState.setBackground(NOT_SELECTED_BACKGROUND);
- //m_labelPassiveState.setForeground(NOT_SELECTED_FOREGROUND, TRUE);
+ m_pMyStatusbar->setCimBtnColors(
+ CIM_STATUS_BK_DISCONNECTED, CIM_STATUS_BK_DISCONNECTED, RGB(0, 0, 0));
}
else if (STATE::SELECTED == state) {
m_pMyStatusbar->setCimBtnText("Selected");
- //m_labelPassiveState.setBackground(SELECTED_BACKGROUND);
- //m_labelPassiveState.setForeground(SELECTED_FOREGROUND, TRUE);
+ m_pMyStatusbar->setCimBtnColors(
+ CIM_STATUS_BK_SELECTED, CIM_STATUS_BK_SELECTED, RGB(0, 0, 0));
}
}
pAny->release();
--
Gitblit v1.9.3