PropertyList.h
上传用户:liming
上传日期:2022-02-22
资源大小:23k
文件大小:3k
源码类别:

ListView/ListBox

开发平台:

Visual C++

  1. #if !defined(AFX_PROPERTYLIST_H__74205380_1B56_11D4_BC48_00105AA2186F__INCLUDED_)
  2. #define AFX_PROPERTYLIST_H__74205380_1B56_11D4_BC48_00105AA2186F__INCLUDED_
  3. #if _MSC_VER > 1000
  4. #pragma once
  5. #endif // _MSC_VER > 1000
  6. // PropertyList.h : header file
  7. //
  8. #define PIT_COMBO 0  //PIT = property item type
  9. #define PIT_EDIT 1
  10. #define PIT_COLOR 2
  11. #define PIT_FONT 3
  12. #define PIT_FILE 4
  13. #define IDC_PROPCMBBOX   712
  14. #define IDC_PROPEDITBOX  713
  15. #define IDC_PROPBTNCTRL  714
  16. /////////////////////////////////////////////////////////////////////////////
  17. //CPropertyList Items
  18. class CPropertyItem
  19. {
  20. // Attributes
  21. public:
  22. CString m_propName;
  23. CString m_curValue;
  24. int m_nItemType;
  25. CString m_cmbItems;
  26. public:
  27. CPropertyItem(CString propName, CString curValue,
  28.   int nItemType, CString cmbItems)
  29. {
  30. m_propName = propName;
  31. m_curValue = curValue;
  32. m_nItemType = nItemType;
  33. m_cmbItems = cmbItems;
  34. }
  35. };
  36. /////////////////////////////////////////////////////////////////////////////
  37. // CPropertyList window
  38. class CPropertyList : public CListBox
  39. {
  40. // Construction
  41. public:
  42. CPropertyList();
  43. // Attributes
  44. public:
  45. // Operations
  46. public:
  47. int AddItem(CString txt);
  48. int AddPropItem(CPropertyItem* pItem);
  49. // Overrides
  50. // ClassWizard generated virtual function overrides
  51. //{{AFX_VIRTUAL(CPropertyList)
  52. public:
  53. virtual void MeasureItem(LPMEASUREITEMSTRUCT lpMeasureItemStruct);
  54. virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);
  55. protected:
  56. virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
  57. virtual void PreSubclassWindow();
  58. //}}AFX_VIRTUAL
  59. // Implementation
  60. public:
  61. virtual ~CPropertyList();
  62. // Generated message map functions
  63. protected:
  64. //{{AFX_MSG(CPropertyList)
  65. afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
  66. afx_msg void OnSelchange();
  67. afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
  68. afx_msg void OnKillFocus(CWnd* pNewWnd);
  69. afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
  70. afx_msg void OnMouseMove(UINT nFlags, CPoint point);
  71. //}}AFX_MSG
  72. afx_msg void OnKillfocusCmbBox();
  73. afx_msg void OnSelchangeCmbBox();
  74. afx_msg void OnKillfocusEditBox();
  75. afx_msg void OnChangeEditBox();
  76. afx_msg void OnButton();
  77. DECLARE_MESSAGE_MAP()
  78. void InvertLine(CDC* pDC,CPoint ptFrom,CPoint ptTo);
  79. void DisplayButton(CRect region);
  80. CComboBox m_cmbBox;
  81. CEdit m_editBox;
  82. CButton m_btnCtrl;
  83. CFont m_SSerif8Font;
  84. int m_curSel,m_prevSel;
  85. int m_nDivider;
  86. int m_nDivTop;
  87. int m_nDivBtm;
  88. int m_nOldDivX;
  89. int m_nLastBox;
  90. BOOL m_bTracking;
  91. BOOL m_bDivIsSet;
  92. HCURSOR m_hCursorArrow;
  93. HCURSOR m_hCursorSize;
  94. };
  95. /////////////////////////////////////////////////////////////////////////////
  96. //{{AFX_INSERT_LOCATION}}
  97. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  98. #endif // !defined(AFX_PROPERTYLIST_H__74205380_1B56_11D4_BC48_00105AA2186F__INCLUDED_)