MyColorList.h
上传用户:jzscgs158
上传日期:2022-05-25
资源大小:8709k
文件大小:2k
源码类别:

百货/超市行业

开发平台:

Visual C++

  1. //-----------------------------------------------------设计人:牛文平
  2. #ifndef AFX_MYCOLORLISTCTRL_H__9FC7D36B_FC88_42FD_8DAA_2F70016038BA__INCLUDED_
  3. #define AFX_MYCOLORLISTCTRL_H__9FC7D36B_FC88_42FD_8DAA_2F70016038BA__INCLUDED_
  4. #include "MyHeaderCtrl.h"
  5. #include <comdef.h>
  6. //Item的颜色设置
  7. // Download by http://www.codefans.net
  8. struct CMyColor
  9. {
  10. COLORREF colText;
  11. COLORREF colBack;
  12. COLORREF colSelect;
  13. };
  14. class CMyColorList : public CListCtrl
  15. {
  16. //存储ITEM的颜色数组
  17. CObArray m_ArrayCol;
  18. //存储列的对齐方式
  19. CStringArray m_ArrayHeaderAlign;
  20. public:
  21. CMyColorList();
  22. //列头的重绘
  23. CMyHeaderCtrl m_ctlHeader;
  24. //设置是否可选
  25. BOOL m_blnSelect;
  26. //设置列头
  27. void SetHeader();
  28. //添加一项
  29.     int AddItem(int image,COLORREF colText);
  30. //添加一项
  31.     int AddItem(int image,COLORREF colText,COLORREF colBack,COLORREF colSelect);
  32. //设置ITEM的颜色
  33. void SetItemColor(int nitem,COLORREF colText,COLORREF colBack,COLORREF colSelect);
  34. void SetItemColor(int nitem,COLORREF colText);
  35. //返回ITEM的颜色
  36. CMyColor GetItemColor(int nitem);
  37. public:
  38. virtual ~CMyColorList();
  39. virtual void PreSubclassWindow();
  40. virtual void DeleteAllItems();
  41. virtual void DeleteItem(int nItem);
  42. virtual void InsertColumn(int nCol, LPCTSTR lpszColumnHeading, int nFormat /* = LVCFMT_LEFT */, int nWidth /* = -1 */, int nSubItem /* = -1 */);
  43. virtual void InsertItem(int nItem, LPCTSTR lpszItem, int nImage);
  44. protected:
  45. virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);
  46. //{{AFX_MSG(CMyColorList)
  47. afx_msg void OnPaint();
  48. afx_msg void OnDestroy();
  49. afx_msg void OnKillFocus(CWnd* pNewWnd);
  50. afx_msg void OnSetFocus(CWnd* pOldWnd);
  51. //}}AFX_MSG
  52. DECLARE_MESSAGE_MAP()
  53. };
  54. #endif // AFX_COLORLISTCTRL_H__9FC7D36B_FC88_42FD_8DAA_2F70016038BA__INCLUDED_