#pragma once #include #define LOCKPATH_MAX 255 typedef struct EquHolder { TCHAR szFrEqu[17]; TCHAR szToEqu[17]; TCHAR szPath[17]; TCHAR szLockPathBy[LOCKPATH_MAX];//约20个lock HANDLE int nFrCol; int nToCol; }EQUHOLDER; //模拟xls list 单元格有颜色和选中框 //单元格有设备关联,鼠标显示手标 class CXLSListCtrl : public CListCtrl { public: CXLSListCtrl(); virtual ~CXLSListCtrl(); public: //{{AFX_VIRTUAL(CXLSListCtrl) protected: //}}AFX_VIRTUAL protected: //{{AFX_MSG(CXLSListCtrl) afx_msg void OnNMCustomdraw(NMHDR *pNMHDR, LRESULT *pResult); afx_msg BOOL OnNMClick(NMHDR *pNMHDR, LRESULT *pResult); afx_msg BOOL OnEraseBkgnd(CDC *pDC); afx_msg void OnDestroy(); //}}AFX_MSG DECLARE_MESSAGE_MAP() protected: void DrawText(int nItem, int nSubItem, CDC *pDC, COLORREF crText, COLORREF crBkgnd, CRect &rect, EquHolder *pHolder); protected: int m_nCurItem; int m_nCurSubItem; int m_nPadding; COLORREF m_crHightLightOut; COLORREF m_crHighLight; COLORREF m_crGreen; COLORREF m_crRed; COLORREF m_crWindow; COLORREF m_crWindowText; };