在类VC的界面实现中加入目录树
2008-01-19 20:24:50 来源:WEB开发网核心提示:2.4.2 在左边的控制栏中,添加Tab控件,在类VC的界面实现中加入目录树(3),目录树Tree,并且把目录树放到对话框中,制作目录树:将文件夹DirectoryTree下的DirTreeCtrl.h ,DirTreeCtrl.cpp SortStringArray.h, SortStringArray.cpp四个文
2.4.2 在左边的控制栏中,添加Tab控件,目录树Tree,并且把目录树放到对话框中。
制作目录树:
将文件夹DirectoryTree下的DirTreeCtrl.h ,DirTreeCtrl.cpp SortStringArray.h, SortStringArray.cpp四个文件复制到工程目录下。在菜单Project->Add to project->Files将四个文件加入工程中。这些东东是我们要用来显示系统目录树用的。
在ResourceView中,添加一个对话框,其ID为IDD_DIRTREEDLG,在其属性中设置Style下的=>Style为Child, Border为None,并用这个对话框生成一个类CtreeDlg类。
Notice:
从文档类,框架窗口类和视图类派生自己的类时,一般都得在类中加个DECLARE_DYNCREATE(),然后在类外加个IMPLEMENT_DYNCREATE()(至于为什么请看附录A的链接)。所以在 CtreeDlg.h加上DECLARE_DYNCREATE(CTreeDlg),在其相应的.cpp中加上IMPLEMENT_DYNCREATE(CTreeDlg, CDialog)。在CtreeDlg.h中添加成员变量:
CDirTreeCtrl m_DirTreeCtrl;
在CtreeDlg.cpp中增加WM_INITDIAOG消息事件。在OnitDialog()中添加如下代码:
TCHAR szWorkDir[MAX_PATH];
if (!m_DirTreeCtrl.m_hWnd)
{
if ( m_DirTreeCtrl.SubclassDlgItem(IDC_TREE1, this))
{
m_DirTreeCtrl.DisplayTree( NULL , TRUE );
_getcwd( szWorkDir, 256 ); //得到当前工作目录
// set the Path to the current Work-Directory
m_DirTreeCtrl.SetSelPath( szWorkDir );
}
}
这样目录树便可在对话框上可见,但是现在还不能行。
更多精彩
赞助商链接