DirTreeCtrl.h
上传用户:shouhua
上传日期:2014-12-06
资源大小:5685k
文件大小:2k
源码类别:

杀毒

开发平台:

Visual C++

  1. #if !defined(AFX_DIRTREECTRL_H__50417455_89CA_4507_BC23_DAC8244BAFE6__INCLUDED_)
  2. #define AFX_DIRTREECTRL_H__50417455_89CA_4507_BC23_DAC8244BAFE6__INCLUDED_
  3. #if _MSC_VER > 1000
  4. #pragma once
  5. #endif // _MSC_VER > 1000
  6. // DirTreeCtrl.h : header file
  7. //
  8. #include "MyList.h"
  9. /////////////////////////////////////////////////////////////////////////////
  10. // CDirTreeCtrl window
  11. class CDirTreeCtrl : public CTreeCtrl 
  12. {
  13. // Construction
  14. public:
  15. CDirTreeCtrl();
  16.     MyList   *m_list;
  17. // Attributes
  18. public:
  19. CString m_strFullPath;
  20. // Operations
  21. public:
  22.     void Initialize (MyList   *list);
  23. // Overrides
  24. // ClassWizard generated virtual function overrides
  25. //{{AFX_VIRTUAL(CDirTreeCtrl)
  26. //}}AFX_VIRTUAL
  27. // Implementation
  28. public:
  29. bool SetFolder (CString path);
  30. CString GetFullPath (HTREEITEM item);
  31. virtual ~CDirTreeCtrl();
  32. // Generated message map functions
  33. protected:
  34. //{{AFX_MSG(CDirTreeCtrl)
  35. afx_msg void OnItemexpanded(NMHDR* pNMHDR, LRESULT* pResult);
  36. afx_msg int  OnCreate(LPCREATESTRUCT lpCreateStruct);
  37. //}}AFX_MSG
  38. DECLARE_MESSAGE_MAP() 
  39. private:
  40. HTREEITEM DirToItem(HTREEITEM current, char *dir);
  41. CString GetPathFromHere (CString s, HTREEITEM itm);
  42. HTREEITEM InsertItems (const char *name, HTREEITEM parent, bool isDir, int icon, int iconOpen);
  43. void ExpandBranch (HTREEITEM parent);
  44. void DeleteAllChild (HTREEITEM itm,  bool isEmpty=true);
  45. HTREEITEM AddItem(const char * path, HTREEITEM parent, bool isDir=FALSE, int iconEx=-1, int iconEx2=-1);
  46. HTREEITEM m_DesktopRoot;//desktop_root;
  47. CString   m_DesktopPath;
  48. HTREEITEM m_DrivesRoot;
  49. char      m_DrivesName[512];
  50. CImageList m_ImageList;
  51. };
  52. /////////////////////////////////////////////////////////////////////////////
  53. //{{AFX_INSERT_LOCATION}}
  54. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  55. #endif // !defined(AFX_DIRTREECTRL_H__50417455_89CA_4507_BC23_DAC8244BAFE6__INCLUDED_)