From ce3793790d007a89ccfa483fdb802bf5f778a4c1 Mon Sep 17 00:00:00 2001
From: LAPTOP-T815PCOQ\25526 <mr.liuyang@126.com>
Date: 星期二, 10 十二月 2024 11:29:03 +0800
Subject: [PATCH] 1.配方管理类中定位点添加标识符 2.axis设定读取不可写的定位点数据,并且刷新 3. 完善axis细部设定界面资源

---
 SourceCode/Bond/BondEq/View/AxisDetailSettingsDlg.cpp |   64 ++++++++++++++++++++++++++++++-
 1 files changed, 61 insertions(+), 3 deletions(-)

diff --git a/SourceCode/Bond/BondEq/View/AxisDetailSettingsDlg.cpp b/SourceCode/Bond/BondEq/View/AxisDetailSettingsDlg.cpp
index 29d1963..893d77b 100644
--- a/SourceCode/Bond/BondEq/View/AxisDetailSettingsDlg.cpp
+++ b/SourceCode/Bond/BondEq/View/AxisDetailSettingsDlg.cpp
@@ -32,16 +32,70 @@
 	m_pPLC = pPLC;
 }
 
+void CAxisDetailSettingsDlg::UpdateAxisDetailSettings()
+{
+	// 鑾峰彇杞存暟鎹�
+	RecipeManager& recipeManager = RecipeManager::getInstance();
+	auto axisDetails = recipeManager.getAxis(m_nAxisNO);
+
+	auto formatDouble = [](double value) -> CString {
+		CString str;
+		str.Format(_T("%.3f"), value);
+		return str;
+	};
+
+	auto formatInt = [](int value) -> CString {
+		CString str;
+		str.Format(_T("%d"), value);
+		return str;
+	};
+
+	m_staticAxisNO.SetWindowText(CString(axisDetails.number.c_str()));								// 杞寸紪鍙�
+	m_staticAxisDescription.SetWindowText(CString(axisDetails.description.c_str()));				// 杞存弿杩�
+	m_staticStartAddress.SetWindowText(CString(axisDetails.startAddress.c_str()));					// 璧峰鍦板潃
+
+	GetDlgItem(IDC_EDIT_AXIS_POSITIONING_SPEED_LIMIT)->SetWindowText(formatDouble(axisDetails.maxPositioningSpeed));	// 瀹氫綅閫熷害涓婇檺
+	GetDlgItem(IDC_EDIT_AXIS_JOG_SPEED_LIMIT)->SetWindowText(formatDouble(axisDetails.maxManualSpeed));					// 鎵嬪姩閫熷害涓婇檺
+	GetDlgItem(IDC_EDIT_AXIS_POSITIONING_POINTS)->SetWindowText(formatInt(axisDetails.positioningPointCount));			// 瀹氫綅鐐规暟
+
+	// 寰姩閲�
+	GetDlgItem(IDC_EDIT_AXIS_MODITFY_MICROMENTUM_MIN)->SetWindowText(formatDouble(axisDetails.jogDistance.minValue));
+	GetDlgItem(IDC_EDIT_AXIS_MODITFY_MICROMENTUM)->SetWindowText(formatDouble(axisDetails.jogDistance.currentValue));
+	GetDlgItem(IDC_EDIT_AXIS_MODITFY_MICROMENTUM_MAX)->SetWindowText(formatDouble(axisDetails.jogDistance.maxValue));
+
+	// 鎵嬪姩閫熷害		
+	GetDlgItem(IDC_EDIT_AXIS_MODITFY_POS_MIN)->SetWindowText(formatDouble(axisDetails.manualSpeed.minValue));
+	GetDlgItem(IDC_EDIT_AXIS_MODITFY_POS)->SetWindowText(formatDouble(axisDetails.manualSpeed.currentValue));
+	GetDlgItem(IDC_EDIT_AXIS_MODITFY_POS_MAX)->SetWindowText(formatDouble(axisDetails.manualSpeed.maxValue));
+
+	// 鑷姩閫熷害
+	GetDlgItem(IDC_EDIT_AXIS_MODITFY_AUTO_SPEED_MIN)->SetWindowText(formatDouble(axisDetails.autoSpeed.minValue));
+	GetDlgItem(IDC_EDIT_AXIS_MODITFY_AUTO_SPEED)->SetWindowText(formatDouble(axisDetails.autoSpeed.currentValue));
+	GetDlgItem(IDC_EDIT_AXIS_MODITFY_AUTO_SPEED_MAX)->SetWindowText(formatDouble(axisDetails.autoSpeed.maxValue));
+
+	// 鍔犻�熸椂闂�
+	GetDlgItem(IDC_EDIT_AXIS_MODITFY_ACCE_TIME_MIN)->SetWindowText(formatDouble(axisDetails.accelerationTime.minValue));
+	GetDlgItem(IDC_EDIT_AXIS_MODITFY_ACCE_TIME)->SetWindowText(formatDouble(axisDetails.accelerationTime.currentValue));
+	GetDlgItem(IDC_EDIT_AXIS_MODITFY_ACCE_TIME_MAX)->SetWindowText(formatDouble(axisDetails.accelerationTime.maxValue));
+
+	// 鍑忛�熸椂闂�
+	GetDlgItem(IDC_EDIT_AXIS_MODITFY_DECE_TIME_MIN)->SetWindowText(formatDouble(axisDetails.decelerationTime.minValue));
+	GetDlgItem(IDC_EDIT_AXIS_MODITFY_DECE_TIME)->SetWindowText(formatDouble(axisDetails.decelerationTime.currentValue));
+	GetDlgItem(IDC_EDIT_AXIS_MODITFY_DECE_TIME_MAX)->SetWindowText(formatDouble(axisDetails.decelerationTime.maxValue));
+}
+
 void CAxisDetailSettingsDlg::DoDataExchange(CDataExchange* pDX)
 {
 	CDialogEx::DoDataExchange(pDX);
 	DDX_Control(pDX, IDC_STATIC_AXIS_NUMBER, m_staticAxisNO);
 	DDX_Control(pDX, IDC_STATIC_AXIS_DESCRIP, m_staticAxisDescription);
 	DDX_Control(pDX, IDC_STATIC_START_ADDRESS, m_staticStartAddress);
+	DDX_Control(pDX, IDC_CUSTOM_AXIS_ANCHOR_POINT, m_gridAxisDetailSettings);
 }
 
 
 BEGIN_MESSAGE_MAP(CAxisDetailSettingsDlg, CDialogEx)
+	ON_BN_CLICKED(IDC_BUTTON_AXIS_DETAIL_SETTINGS_SAVE, &CAxisDetailSettingsDlg::OnBnClickedButtonAxisDetailSettingsSave)
 END_MESSAGE_MAP()
 
 
@@ -67,10 +121,14 @@
 		return FALSE;
 	}
 
-	m_staticAxisNO.SetWindowText(CString(axisDetails.number.c_str()));								// 杞寸紪鍙�
-	m_staticAxisDescription.SetWindowText(CString(axisDetails.description.c_str()));				// 杞存弿杩�
-	m_staticStartAddress.SetWindowText(CString(axisDetails.startAddress.c_str()));					// 璧峰鍦板潃
+	UpdateAxisDetailSettings();
 
 	return TRUE;  // return TRUE unless you set the focus to a control
 	// 寮傚父: OCX 灞炴�ч〉搴旇繑鍥� FALSE
 }
+
+void CAxisDetailSettingsDlg::OnBnClickedButtonAxisDetailSettingsSave()
+{
+	// TODO: 鍦ㄦ娣诲姞鎺т欢閫氱煡澶勭悊绋嬪簭浠g爜
+	EndDialog(IDOK);
+}

--
Gitblit v1.9.3