#pragma once #include "CHMPropertyPage.h" #include "BlButton.h" // CPageLinkSignal 对话框 class CPageLinkSignal : public CHMPropertyPage { DECLARE_DYNAMIC(CPageLinkSignal) public: CPageLinkSignal(CWnd* pParent = nullptr); // 标准构造函数 virtual ~CPageLinkSignal(); void setEquipment(SERVO::CEquipment* pEquipment); void CreateSignalButtons(); void UpdateAllUpstreamSignalStatesFromDevice(); void UpdateAllDownstreamSignalStatesFromDevice(); void UpdateUpstreamSignalState(int nRow, int nCol, bool bNewState); void UpdateDownstreamSignalState(int nRow, int nCol, bool bNewState); private: SERVO::CEquipment* m_pEquipment; CBlButton* m_pBtnUpstream[8][8]; CBlButton* m_pBtnDwonstream[8][4]; BOOL m_bEnable; // 对话框数据 #ifdef AFX_DESIGN_TIME enum { IDD = IDD_PAGE_LINK_SIGNAL }; #endif protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持 DECLARE_MESSAGE_MAP() public: virtual BOOL OnInitDialog(); afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor); afx_msg void OnDestroy(); afx_msg void OnSize(UINT nType, int cx, int cy); afx_msg void OnTimer(UINT_PTR nIDEvent); afx_msg void OnClickedCheckEnable(); };