对话框与控件.ppt

//第一级 CString str = D:\\; TreeItem.hParent = TVI_ROOT; //父级为根部 TreeItem.item.pszText = str.GetBuffer(50); //设置字符缓冲区的大小并赋值 TreeItem.item.lParam = 1; //对于根目录,设置为1 hTreeItem = m_Tree.InsertItem(TreeItem); //插入Tree控件中 int number = 0; //计算文件的个数 CFileFind file; BOOL bfind; CString temp; //第二级 TreeItem.hParent = hTreeItem; TreeItem.item.lParam = 10;//对于子目录,设置为10 bfind = file.FindFile(D:\\*.*); //查找D:盘根目录下的所有文件和目录 while(bfind)//如果找到 { bfind = file.FindNextFile(); //查找下一个 if(file.IsDirectory()) //判断是否为目录 { //得到目录名并拷贝字符串 strcpy(TreeItem.item.pszText,file.GetFileName()); hTreeItem = m_Tree.InsertItem(TreeItem); //插入Tree控件 } else { //如不是目录,插入List控件 str = file.GetFileName(); //得到文件名 m_List.InsertItem(number,str); //把文件名插入第number行 number++; } } return TRUE;} void CDialogModalless::OnSelchangedTree(NMHDR* pNMHDR, LRESULT* pResult) { NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR; // TODO: Add your control notification handler code here CString temp,str; //获取当前被选择的tree view项 HTREEITEM CurItem = m_Tree.GetSelectedItem(); TV_ITEM TreeItem; TreeItem.hItem = CurItem; m_Tree.GetItem(TreeItem); //获取指定tree view项的属性 //获得当前选中项的文本 temp = m_Tree.GetItemText(m_Tree.GetSelectedItem()); long CurlParam = TreeItem.lParam; //当前条目的序号 if(CurlParam != 1) //如果是子目录 { //获取当前被选择项的父项 TreeItem.hItem = m_Tree.GetParentItem(m_Tree.GetSelectedItem()); m_Tree.GetItem(TreeItem); CurItem = TreeItem.hItem; //获得当前选中项的文本 str = m_Tree.GetItemText(CurItem); str += temp; str += \\; } else str = temp; m_List.DeleteAllItems(); //删除控件中的所有项 CFileFind file; BOOL bFind; int number = 0; str += *.*; bFind = file.FindFile(str); //在str目录下查找 while(bFind) //如果找到 { bFind = file.FindNextFile(); if(!file.IsDirectory()) //判断是否为目录 { //如不是目录,插入List控件 temp = file.GetFileName(); //得到文件名 m_List.InsertItem(number,temp); //把文件名插入第number行 number++; } } Up

文档评论(0)

1亿VIP精品文档

相关文档