我有个文件夹,我想利用树形控件将此文件夹中的各种文档显示在树形控件里,请问具体代码是什么啊?谢谢了!!

解决方案 »

  1.   

    其实就是树型控件的使用  给LZ一些资料  可以参考一下http://www.vckbase.com/document/viewdoc/?id=1712
      

  2.   


    用CFileFind 在文件夹下查找文件,然后插入到树中
      

  3.   

    BOOL CMyControlDlg::OnInitDialog()
    {
    // TODO: Add extra initialization here
    /*初始化*/
    //图标数组
    HICON hIcon[4];
    hIcon[0]=AfxGetApp()->LoadIcon(IDI_CLOSE);
    hIcon[1]=AfxGetApp()->LoadIcon(IDI_OPEN);
    hIcon[2]=AfxGetApp()->LoadIcon(IDI_DRIVE);
    hIcon[3]=AfxGetApp()->LoadIcon(IDI_FILE); //图标列表
    m_imagelist.Create(16, 16, ILC_COLOR32| ILC_MASK, 4, 4);
    m_imagelist.Add(hIcon[0]);
    m_imagelist.Add(hIcon[1]);
    m_imagelist.Add(hIcon[2]);
    m_imagelist.Add(hIcon[3]);

    //控件指针
    CTreeCtrl * pTreeCtrl=(CTreeCtrl *)GetDlgItem(IDC_TREE1);
    pTreeCtrl->SetImageList(&m_imagelist,TVSIL_NORMAL);

    //树结点
    HTREEITEM hRoot;
    hRoot=pTreeCtrl->InsertItem(_T("D:"),2,2,NULL);

    //递归遍历目录
    BrowseDir( "d:",  hRoot); return TRUE;  // return TRUE  unless you set the focus to a control
    }void CMyControlDlg::BrowseDir( CString strDir ,HTREEITEM hParent ) 

    CFileFind fileFind; 
    CString szDir = strDir;
    HTREEITEM hChild;
    CTreeCtrl * pTreeCtrl=(CTreeCtrl *)GetDlgItem(IDC_TREE1); if(szDir.Right(1) != "\\")
    {
               szDir += "\\";
            }
            szDir += "*.*";
    BOOL res = fileFind.FindFile(szDir);  while( res )
    {  res = fileFind.FindNextFile();

    if(fileFind.IsDirectory() && !fileFind.IsDots()) 
    {
    CString strPath = fileFind.GetFilePath(); 
    CString strFileName = fileFind.GetFileName(); 
    hChild = pTreeCtrl->InsertItem(strFileName,0,0,hParent);
    BrowseDir( strPath, hChild ); 
    }
                    else if(!fileFind.IsDirectory() && !fileFind.IsDots()) 
                    {
                       CString strFileName = fileFind.GetFileName();
       pTreeCtrl->InsertItem(strFileName,3,3,hParent); 
    }
    }  fileFind.Close();