From 52a552985f1ef1cdaef18dbdb29722581e507f48 Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期五, 06 十二月 2024 17:58:31 +0800
Subject: [PATCH] 1.实现按钮闪烁功能;
---
SourceCode/Bond/BondEq/View/AxisSettingsDlg.cpp | 72 +++++++++++++++++++++++++++++------
1 files changed, 59 insertions(+), 13 deletions(-)
diff --git a/SourceCode/Bond/BondEq/View/AxisSettingsDlg.cpp b/SourceCode/Bond/BondEq/View/AxisSettingsDlg.cpp
index 58b0515..adc83f2 100644
--- a/SourceCode/Bond/BondEq/View/AxisSettingsDlg.cpp
+++ b/SourceCode/Bond/BondEq/View/AxisSettingsDlg.cpp
@@ -12,6 +12,9 @@
#define TIMER_INIT 1
#define TIMER_READ_PLC_DATA 2
+
+#define ID_MSG_UPDATA_DATA_TO_UI WM_USER + 101
+
// CAxisSettingsDlg 瀵硅瘽妗�
IMPLEMENT_DYNAMIC(CAxisSettingsDlg, CDialogEx)
@@ -37,6 +40,9 @@
m_bReady = FALSE;
m_bBusy = FALSE;
m_bErr = FALSE;
+ for (int i = 0; i < BTN_MAX; i++) {
+ m_pBlBtns[i] = new CBlButton();
+ }
}
CAxisSettingsDlg::~CAxisSettingsDlg()
@@ -48,6 +54,10 @@
}
}
m_mapFonts.clear();
+
+ for (int i = 0; i < BTN_MAX; i++) {
+ delete m_pBlBtns[i];
+ }
}
void CAxisSettingsDlg::SetPLC(CPLC* pPLC)
@@ -79,11 +89,6 @@
DDX_Control(pDX, IDC_EDIT_AXIS_MODITFY_ACCE_TIME, m_editAccelerationTime);
DDX_Control(pDX, IDC_EDIT_AXIS_MODITFY_DECE_TIME, m_editDecelerationTime);
DDX_Control(pDX, IDC_EDIT_AXIS_MODITFY_MICROMENTUM, m_editJogDistance);
- DDX_Control(pDX, IDC_BUTTON_AXIS_ANCHOR_POINT_GROUP1, m_pageButtons[0]);
- DDX_Control(pDX, IDC_BUTTON_AXIS_ANCHOR_POINT_GROUP2, m_pageButtons[1]);
- DDX_Control(pDX, IDC_BUTTON_AXIS_ANCHOR_POINT_GROUP3, m_pageButtons[2]);
- DDX_Control(pDX, IDC_BUTTON_AXIS_ANCHOR_POINT_GROUP4, m_pageButtons[3]);
- DDX_Control(pDX, IDC_BUTTON_AXIS_ANCHOR_POINT_GROUP5, m_pageButtons[4]);
}
UINT CAxisSettingsDlg::FindIDByName(const CString& strControlID)
@@ -214,14 +219,11 @@
void CAxisSettingsDlg::updatePageButtonStates()
{
for (int i = 0; i < 5; ++i) {
- if (i + 1 == m_currentPage) {
- m_pageButtons[i].SetFaceColor(RGB(0, 122, 204)); // 閫変腑鑳屾櫙鑹诧紙钃濊壊锛�
- }
- else {
- m_pageButtons[i].SetFaceColor(RGB(240, 240, 240)); // 榛樿鑳屾櫙鑹�
- }
-
- m_pageButtons[i].Invalidate();
+ BOOL bSelect = (i + 1 == m_currentPage);
+ m_pBlBtns[i]->SetFaceColor(bSelect ?
+ BTN_PAGE_FACE_SELECT_COLOR: BTN_PAGE_FACE_NORMAL_COLOR);
+ m_pBlBtns[i]->SetTextColor(bSelect ?
+ BTN_PAGE_TEXT_SELECT_COLOR : BTN_PAGE_TEXT_NORMAL_COLOR);
}
}
@@ -729,6 +731,48 @@
pLabel->SetAlignment(AlignCenter);
pLabel->SetDynamicFont(TRUE);
}
+
+ // 鎸夐挳鍒濆鍖�
+ m_pBlBtns[BTN_PAGE1]->SubclassDlgItem(IDC_BUTTON_AXIS_ANCHOR_POINT_GROUP1, this);
+ m_pBlBtns[BTN_PAGE2]->SubclassDlgItem(IDC_BUTTON_AXIS_ANCHOR_POINT_GROUP2, this);
+ m_pBlBtns[BTN_PAGE3]->SubclassDlgItem(IDC_BUTTON_AXIS_ANCHOR_POINT_GROUP3, this);
+ m_pBlBtns[BTN_PAGE4]->SubclassDlgItem(IDC_BUTTON_AXIS_ANCHOR_POINT_GROUP4, this);
+ m_pBlBtns[BTN_PAGE5]->SubclassDlgItem(IDC_BUTTON_AXIS_ANCHOR_POINT_GROUP5, this);
+ m_pBlBtns[BTN_JOG_ADD]->SubclassDlgItem(IDC_BUTTON_AXIS_TEST_JOG_ADD, this);
+ m_pBlBtns[BTN_JOG_ADD]->SetFrameColor(BS_NORMAL, BTN_JOG_FRAME_NORMAL);
+ m_pBlBtns[BTN_JOG_ADD]->SetFrameColor(BS_HOVER, BTN_JOG_FRAME_HOVER);
+ m_pBlBtns[BTN_JOG_ADD]->SetFrameColor(BS_PRESS, BTN_JOG_FRAME_PRESS);
+ m_pBlBtns[BTN_JOG_ADD]->SetBkgndColor(BS_NORMAL, BTN_JOG_BKGND_NORMAL);
+ m_pBlBtns[BTN_JOG_ADD]->SetBkgndColor(BS_HOVER, BTN_JOG_BKGND_HOVER);
+ m_pBlBtns[BTN_JOG_ADD]->SetBkgndColor(BS_PRESS, BTN_JOG_BKGND_PRESS);
+ m_pBlBtns[BTN_JOG_SUB]->SubclassDlgItem(IDC_BUTTON_AXIS_TEST_JOG_SUB, this);
+ m_pBlBtns[BTN_JOG_SUB]->SetFrameColor(BS_NORMAL, BTN_JOG_FRAME_NORMAL);
+ m_pBlBtns[BTN_JOG_SUB]->SetFrameColor(BS_HOVER, BTN_JOG_FRAME_HOVER);
+ m_pBlBtns[BTN_JOG_SUB]->SetFrameColor(BS_PRESS, BTN_JOG_FRAME_PRESS);
+ m_pBlBtns[BTN_JOG_SUB]->SetBkgndColor(BS_NORMAL, BTN_JOG_BKGND_NORMAL);
+ m_pBlBtns[BTN_JOG_SUB]->SetBkgndColor(BS_HOVER, BTN_JOG_BKGND_HOVER);
+ m_pBlBtns[BTN_JOG_SUB]->SetBkgndColor(BS_PRESS, BTN_JOG_BKGND_PRESS);
+ m_pBlBtns[BTN_JOG_SEV]->SubclassDlgItem(IDC_BUTTON_AXIS_SEV, this);
+ m_pBlBtns[BTN_JOG_SEV]->SetFrameColor(BS_NORMAL, BTN_SEV_FRAME_NORMAL);
+ m_pBlBtns[BTN_JOG_SEV]->SetFrameColor(BS_HOVER, BTN_SEV_FRAME_HOVER);
+ m_pBlBtns[BTN_JOG_SEV]->SetFrameColor(BS_PRESS, BTN_SEV_FRAME_PRESS);
+ m_pBlBtns[BTN_JOG_SEV]->SetBkgndColor(BS_NORMAL, BTN_SEV_BKGND_NORMAL);
+ m_pBlBtns[BTN_JOG_SEV]->SetBkgndColor(BS_HOVER, BTN_SEV_BKGND_HOVER);
+ m_pBlBtns[BTN_JOG_SEV]->SetBkgndColor(BS_PRESS, BTN_SEV_BKGND_PRESS);
+ m_pBlBtns[BTN_JOG_STOP]->SubclassDlgItem(IDC_BUTTON_AXIS_TEST_STOP, this);
+ m_pBlBtns[BTN_JOG_STOP]->SetFrameColor(BS_NORMAL, BTN_STOP_FRAME_NORMAL);
+ m_pBlBtns[BTN_JOG_STOP]->SetFrameColor(BS_HOVER, BTN_STOP_FRAME_HOVER);
+ m_pBlBtns[BTN_JOG_STOP]->SetFrameColor(BS_PRESS, BTN_STOP_FRAME_PRESS);
+ m_pBlBtns[BTN_JOG_STOP]->SetBkgndColor(BS_NORMAL, BTN_STOP_BKGND_NORMAL);
+ m_pBlBtns[BTN_JOG_STOP]->SetBkgndColor(BS_HOVER, BTN_STOP_BKGND_HOVER);
+ m_pBlBtns[BTN_JOG_STOP]->SetBkgndColor(BS_PRESS, BTN_STOP_BKGND_PRESS);
+ m_pBlBtns[BTN_JOG_OPR]->SubclassDlgItem(IDC_BUTTON_AXIS_TEST_OPR, this);
+ m_pBlBtns[BTN_JOG_OPR]->SetFrameColor(BS_NORMAL, BTN_OPR_FRAME_NORMAL);
+ m_pBlBtns[BTN_JOG_OPR]->SetFrameColor(BS_HOVER, BTN_OPR_FRAME_HOVER);
+ m_pBlBtns[BTN_JOG_OPR]->SetFrameColor(BS_PRESS, BTN_OPR_FRAME_PRESS);
+ m_pBlBtns[BTN_JOG_OPR]->SetBkgndColor(BS_NORMAL, BTN_OPR_BKGND_NORMAL);
+ m_pBlBtns[BTN_JOG_OPR]->SetBkgndColor(BS_HOVER, BTN_OPR_BKGND_HOVER);
+ m_pBlBtns[BTN_JOG_OPR]->SetBkgndColor(BS_PRESS, BTN_OPR_BKGND_PRESS);
// 鍒濆鍖栧綋鍓嶉〉闈负绗竴椤�
m_currentPage = 1;
@@ -970,6 +1014,7 @@
handleAxisOperation(AxisOperationType::OPR, true);
Sleep(200);
handleAxisOperation(AxisOperationType::OPR, false);
+ m_pBlBtns[BTN_JOG_OPR]->Flash(1000);
}
void CAxisSettingsDlg::OnBnClickedButtonAxisTestStop()
@@ -978,6 +1023,7 @@
handleAxisOperation(AxisOperationType::STOP, true);
Sleep(200);
handleAxisOperation(AxisOperationType::STOP, false);
+ m_pBlBtns[BTN_JOG_OPR]->StopFlash();
}
void CAxisSettingsDlg::OnSelchangeComboAxisName()
--
Gitblit v1.9.3