lihai:好好,不错不错,我正在找这方面的代码。学习学习!
(发表于2003-9-17 14:18:00)
lihai:SHGetFileInfo(temp + file.GetFileName(),0,&info,sizeof(&info),SHGFI_DISPLAYNAME | SHGFI_ICON);
int i = m_ImageList.Add(info.hIcon);
m_list.InsertItem(i,info.szDisplayName,i);
这里会不会导致m_list这个CImageList 无限制增大啊?怎么解决?
(发表于2003-9-17 16:34:00)
nwcow:void CTreeViewDlg::OnSelchangedTree(NMHDR* pNMHDR, LRESULT* pResult)
{
m_list.DeleteAllItems();
int count = m_ImageList.GetImageCount();
for(int i =0; i< count; i++)
{
m_ImageList.Remove(i);
}
count = m_ImageList.GetImageCount();
这段程序我改了一下,可惜每次只能删除一般。为什么?
(发表于2003-9-19 10:24:00)
lihai:我认为使用sys image list比较好,及省时也省空间,我正在研究,弄懂了再写出来!
(发表于2003-9-19 10:39:00)
gww888:请问谁知道如何得到sys image list的指针啊,谢谢!
(发表于2003-10-6 12:40:00)
lixuebao:俺是兰州交通大学的,望日后多指教。
(发表于2003-11-10 21:31:00)
dyjwxl:不错,但在GetDriveDir(HTREEITEM hParent)中的递归是多余的,这个递归其实什么都没有做;另外,在展开事件函数OnItemexpandedTree中如果改成用m_tree.GetSelectedItem()来获得展开点可以不?我试了一下好像有问题
(发表于2003-11-27 11:26:00)
dyjwxl:不错,但在GetDriveDir(HTREEITEM hParent)中的递归是多余的,这个递归其实什么都没有做;另外,在展开事件函数OnItemexpandedTree中如果改成用m_tree.GetSelectedItem()来获得展开点可以不?我试了一下好像有问题
(发表于2003-11-27 11:27:00)
accpwww:有bug,当多次点击同一项,触发OnItemexpandedTree事件,为其子项添加下一级目录时,会多次为其子项添加下一级目录。
(发表于2004-3-30 17:12:00)
accpwww:这个问题已经解决,可以在添加下一级目录的时候作判断,是否已经添加了下一级目录,可以避免重复的添加下一级目录出现bug!
(发表于2004-3-31 9:17:00)
sgch1982:是的,递归是没用的,因为你后来使用的是相对路径,是找不到任何文件的。
(发表于2005-4-8 15:32:00)
kolin_05:可以用 ItemHasChildren 做判断
(发表于2006-12-20 17:44:00)
kongwe:m_ImageList只是Add,没有删除操作,这样会出事的;)
(发表于2006-12-26 9:24:00)
westangel:在OnItemexpandedTree中
if(item.hItem == m_hRoot)
return;
有什么作用,好像注释掉以后也没什么影响
(发表于2008-7-14 11:06:00)
..........................................................................
--------------------next---------------------