求救!CTreeGridCtrl组件,根目录展开后其子目录不能打开的问题。

盛世小码哥 2015-01-04 02:01:55
大家都知道,Mukit, Ataul, 这个老外在Codeproject上发布了一个名为TreeGrid的控件,但是小弟在使用过程中发现了一个比较致命的BUG苦思几日未能解开!
BUG描述:
当子目录收起后然后把根目录收起,会出现根目录打开后,其子目录展不开,貌似是子目录的内容被删除。详情见图解。请各位大侠帮忙解决,小弟跪谢!























...全文
234 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Eleven 2015-01-09
  • 打赏
  • 举报
回复
恭喜~
盛世小码哥 2015-01-04
  • 打赏
  • 举报
回复 1
问题解决了,重新写一下他的TreeGridCtrl中的ShowRow函数, 原先的写法是有问题。 BOOL CTreeGridCtrl::ShowRow(GTV_HTREENODE hItem, int nRow, BOOL bShow) { BOOL bRet = FALSE; int nHeight = -1; if(!bShow) { if(GetRowHeight(nRow) != 0) // This is the change { m_mapHiddenRowHeights.SetAt(hItem, GetRowHeight(nRow)); } bRet = SetRowHeight(nRow, 0); } else { if(GetRowHeight(nRow) == 0) { m_mapHiddenRowHeights.Lookup(hItem, nHeight); SetRowHeight(nRow, nHeight); } } GTV_SETATTRIB_NOTVISIBLE(hItem, !bShow); return bRet; }
盛世小码哥 2015-01-04
  • 打赏
  • 举报
回复
这里是源码共享地址: http://yunpan.cn/cyFWwiAQDb8EK 提取码 1133
盛世小码哥 2015-01-04
  • 打赏
  • 举报
回复
如果还看不懂的话,请到网盘地址上下载演示的视频。 http://yunpan.cn/cyFETvLzJQDun 提取码 28b2

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧