📄 choosedirectory.h
字号:
#if !defined(AFX_CHOOSEDIRECTORY_H__B05FED40_7B44_11D4_85D3_DA464D000000__INCLUDED_)
#define AFX_CHOOSEDIRECTORY_H__B05FED40_7B44_11D4_85D3_DA464D000000__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// ChooseDirectory.h : header file
//
/////////////////////////////////////////////////////////////////////////////
// CChooseDirectory dialog
class CChooseDirectory : public CDialog
{
public:
class CData
{
public:
CData();
~CData();
CString m_DirPath;
CString m_OldPath;
protected:
};
enum DriveType
{
dtUnknown = DRIVE_UNKNOWN,
dtNoRootDir = DRIVE_NO_ROOT_DIR,
dtRemovable = DRIVE_REMOVABLE,
dtFixed = DRIVE_FIXED,
dtRemote = DRIVE_REMOTE,
dtCDRom = DRIVE_CDROM,
dtRamDisk = DRIVE_RAMDISK
};
enum TreeModes
{
tmShort = 0,
tmDetail,
tmExpanded
};
// Construction
public:
CChooseDirectory(CData& Data, char *Title = NULL, CWnd* pParent = NULL); // standard constructor
~CChooseDirectory();
// Dialog Data
//{{AFX_DATA(CChooseDirectory)
enum { IDD = IDD_CHOOSEDIRECTORY };
CTreeCtrl m_DirTree;
CString m_CurrentSelection;
//}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CChooseDirectory)
public:
virtual int DoModal(LPCSTR BeginDir = NULL);
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
void SelectStartDir(char * StartDir);
HTREEITEM InsertChild (HTREEITEM parent, char *label, int image = 0, int selimage = 0, HTREEITEM SortType = TVI_SORT);
void AddNode (const char *path, HTREEITEM node, int type, int mode);
void LoadTree();
void BuildPath(CString& path, HTREEITEM node);
// Generated message map functions
//{{AFX_MSG(CChooseDirectory)
virtual void OnOK();
afx_msg void OnHelp();
afx_msg void OnItemexpandedDirectoryTree(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnSelchangedDirectoryTree(NMHDR* pNMHDR, LRESULT* pResult);
virtual BOOL OnInitDialog();
//}}AFX_MSG
private:
CImageList m_Images;
CData& m_Data;
int m_level;
char *m_StartPath;
char *m_Title;
DECLARE_MESSAGE_MAP()
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_CHOOSEDIRECTORY_H__B05FED40_7B44_11D4_85D3_DA464D000000__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -