From c6edbd1df725b75f0b1ed97ca178ea4e3231b25f Mon Sep 17 00:00:00 2001
From: LAPTOP-T815PCOQ\25526 <mr.liuyang@126.com>
Date: 星期一, 09 十二月 2024 14:18:11 +0800
Subject: [PATCH] 1. axis设定先写入PLC,间隔2秒后更新界面和配方 2. IO模块如果是可以点击的信号,移动到控件上鼠标显示点击图标 3. io模块添加圆角功能

---
 SourceCode/Bond/BondEq/View/AxisSettingsDlg.h |   71 +++++++++++++++++++++++++++++++----
 1 files changed, 62 insertions(+), 9 deletions(-)

diff --git a/SourceCode/Bond/BondEq/View/AxisSettingsDlg.h b/SourceCode/Bond/BondEq/View/AxisSettingsDlg.h
index bd1f4d6..5093409 100644
--- a/SourceCode/Bond/BondEq/View/AxisSettingsDlg.h
+++ b/SourceCode/Bond/BondEq/View/AxisSettingsDlg.h
@@ -4,6 +4,36 @@
 #include "BLLabel.h"
 #include "CPLC.h"
 
+// 姣忛〉瀹氫綅鐐规樉绀轰釜鏁�
+#define AXIS_PAGE_SIZE	5
+
+// LABEL鎺т欢
+#define LABEL_MAX		6
+#define LABEL_FLS		0
+#define LABEL_DOG		1
+#define LABEL_RLS		2
+#define LABEL_READY		3
+#define LABEL_BUSY		4
+#define LABEL_ERR		5
+
+// BUTTON鎺т欢
+#define BTN_MAX			15
+#define BTN_PAGE1		0
+#define BTN_PAGE2		1
+#define BTN_PAGE3		2
+#define BTN_PAGE4		3
+#define BTN_PAGE5		4
+#define BTN_JOG_ADD		5
+#define BTN_JOG_SUB		6
+#define BTN_JOG_SEV		7
+#define BTN_JOG_OPR		8
+#define BTN_JOG_STOP	9
+#define BTN_POINT1		10
+#define BTN_POINT2		11
+#define BTN_POINT3		12
+#define BTN_POINT4		13
+#define BTN_POINT5		14
+
 // CAxisSettingsDlg 瀵硅瘽妗�
 
 enum class AxisOperationType {
@@ -11,6 +41,7 @@
 	JOG_ADD,    // 姝e悜鐐瑰姩
 	JOG_SUB,    // 鍙嶅悜鐐瑰姩
 	STOP,		// 鍋滄鎿嶄綔
+	SEV_ON,		// 浣胯兘
 	POSITION_1, // 瀹氫綅鐐�1
 	POSITION_2, // 瀹氫綅鐐�2
 	POSITION_3, // 瀹氫綅鐐�3
@@ -42,18 +73,23 @@
 	void AdjustControls(float dScaleX, float dScaleY);
 	void AdjustControlFont(CWnd* pWnd, int nWidth, int nHeight);
 	void AdjustLabelFont(CBLLabel& label);
-	void SetStatusColor(CBLLabel& label, BOOL bStatus);
+	void SetLabelColor(CBLLabel& label, COLORREF color);
+	void SetLabelColorBasedOnState(CBLLabel& label, BOOL bState, COLORREF colorTrue, COLORREF colorFalse);
+	void UpdateLabels();
 	void updatePageButtonStates();
+	void HideEditCursor(int nCtrlID);
 	int getCurrentSelectedAxisID();
 	void initializeAxisIDCombo();
 	void refreshAxisDetails(int nAxisId);
 	void refreshPositionDetails(int nAxisId, int pageNumber);
+	void UpdatePositionRange(PositionRange& position, int pageNumber, int pageSize, int currentIndex);
 	void updateAxisSelection(int offset);
 	void updateDataFromUI(int nAxisId);
 	void switchToPage(int targetPage);
+	bool ParsePLCAddress(const CString& address, MC::SOFT_COMPONENT& component, int& addr);
 	void writeAxisDataToPLC(int nAxisId);
 	void handleAxisOperation(AxisOperationType eOpType, bool bPressed);
-
+	void readPLCDataToUI(int nAxisId);
 
 private:
 	CPLC* m_pPLC;
@@ -66,19 +102,33 @@
 	// 閰嶆柟鍚嶇О
 	CString m_strRecipeName;
 
-	// 鎸変笅鏍囪瘑
-	BOOL m_bJogAddPressed;
-	BOOL m_bJogSubPressed;
-
 	// 鎺т欢
-	CBLLabel m_staticFLS, m_staticDOG, m_staticRLS, m_staticReady, m_staticBusy, m_staticErr;
+	CBlButton* m_pBlBtns[BTN_MAX];
+	CBLLabel* m_pBlLabels[LABEL_MAX];
 	CComboBox m_comboAxisNO;
 	CStatic m_staticAxisNO, m_staticAxisDescription, m_staticStartAddress;
 	CEdit m_editManualSpeed, m_editAutoSpeed, m_editAccelerationTime, m_editDecelerationTime, m_editJogDistance;
-	CBlButton m_pageButtons[5];
-
+	
 	std::map<int, CRect> m_mapCtrlLayouts;
 	std::map<int, CFont*> m_mapFonts;
+
+	// 璇诲埌鐨勬暟鎹�
+	BOOL m_bSEV;
+	double m_fCurPos;
+	double m_fManualSpeed;
+	double m_fAutoSpeed;
+	double m_fPrm;
+	int m_nLoad;
+	int m_nErrCode;
+	int m_nAlarmCode;
+	BOOL m_bFLS;
+	BOOL m_bDOG;
+	BOOL m_bRLS;
+	BOOL m_bReady;
+	BOOL m_bBusy;
+	BOOL m_bErr;
+	DWORD m_nBtnsFlashState6;
+	DWORD m_nBtnsFlashState8;
 
 protected:
 	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 鏀寔
@@ -101,8 +151,11 @@
 	afx_msg void OnBnClickedButtonAxisAnchorPoint5();
 	afx_msg void OnBnClickedButtonAxisTestOpr();
 	afx_msg void OnBnClickedButtonAxisTestStop();
+	afx_msg void OnBnClickedButtonAxisSev();
 	afx_msg void OnSelchangeComboAxisName();
 	afx_msg void OnBnClickedButtonAxisSave();
+	afx_msg LRESULT OnUpdateDataToUI(WPARAM wParam, LPARAM lParam);
 	afx_msg void OnTimer(UINT_PTR nIDEvent);
+	afx_msg void OnClose();
 	DECLARE_MESSAGE_MAP()
 };

--
Gitblit v1.9.3