#pragma once
|
#include "afxdialogex.h"
|
#include "GridCtrl.h"
|
#include "CBaseDlg.h"
|
#include "PLC.h"
|
#include "AxisManager.h"
|
|
|
// CAxisDetailSettingsDlg 对话框
|
|
class CAxisDetailSettingsDlg : public CBaseDlg
|
{
|
DECLARE_DYNAMIC(CAxisDetailSettingsDlg)
|
|
public:
|
CAxisDetailSettingsDlg(AxisManager* pAxisManager, int nAxisNO, CWnd* pParent = nullptr); // 标准构造函数
|
virtual ~CAxisDetailSettingsDlg();
|
|
// 对话框数据
|
#ifdef AFX_DESIGN_TIME
|
enum { IDD = IDD_DIALOG_AXIS_DETAIL_SETTINGS };
|
#endif
|
|
private:
|
void InitAnchorPontManager();
|
void FillAnchorPontManager();
|
void UpdateAxisDetailSettings();
|
bool ParsePLCAddress(const CString& address, MC::SOFT_COMPONENT& component, int& addr);
|
void WriteAxisDataToPLC(int nAxisId);
|
|
private:
|
CPLC* m_pPLC;
|
int m_nAxisNO;
|
|
// 轴管理器
|
AxisManager* m_pAxisManager;
|
|
// 控件
|
CStatic m_staticAxisNO, m_staticAxisDescription, m_staticStartAddress;
|
CGridCtrl m_grid;
|
|
protected:
|
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
|
virtual BOOL OnInitDialog();
|
afx_msg void OnGridItemChanged(NMHDR* pNotifyStruct, LRESULT* pResult);
|
afx_msg void OnBnClickedButtonAxisDetailSettingsSave();
|
afx_msg void OnBnClickedButtonSetAxisPositioningPoints();
|
DECLARE_MESSAGE_MAP()
|
};
|