马上结贴 CTreeCtrl InsertItem如果反向插入

zouhj2009 2009-08-07 11:20:28
void CAtDlg::OnButton1()
{
TVINSERTSTRUCT tvInsert;
HTREEITEM hParent;

tvInsert.hParent = NULL;
tvInsert.hInsertAfter = NULL;
tvInsert.item.mask = TVIF_TEXT;
for(int i=0;i<5;i++)
{
CString a ;
a.Format("%d",i);
hParent = m_ctrlTree.InsertItem(&tvInsert);
m_ctrlTree.InsertItem(a, hParent, NULL);
}

}
20分给答案正确人士
InsertItem插入都是从底部向上插入 插入上面是先插入
0
1
2
3
4

我想实现反向插入
4
3
2
1
0

...全文
49 点赞 收藏 7
写回复
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
dragoo1 2010-07-19
学习了
回复
zouhj2009 2009-08-07
[Quote=引用 4 楼 tttyd 的回复:]
下面的代码就可以实现你的要求了。
C/C++ codevoid CAtDlg::OnButton1()
{for(int i=0;i<5;i++)
{
CString a ;
a.Format("%d",i);
m_ctrlTree.InsertItem(a, TVI_ROOT, TVI_FIRST);
}

}
插入的结果为
4
3
2
1
0
[/Quote]
喜欢你这样的代码 分给你了
回复
zouhj2009 2009-08-07
void CAtDlg::OnButton1()
{
TVINSERTSTRUCT tvInsert;
HTREEITEM hParent;

tvInsert.hParent = TVI_ROOT;
tvInsert.hInsertAfter = TVI_LAST;
tvInsert.item.mask = TVIF_TEXT;

for(int i=0;i<5;i++)
{
CString a ;
a.Format("%d",i);
hParent = m_ctrlTree.InsertItem(&tvInsert);
m_ctrlTree.InsertItem(a, hParent, NULL);
}

}

这样也不行啊 晕死
回复
雪影 2009-08-07
下面的代码就可以实现你的要求了。
void CAtDlg::OnButton1()
{
for(int i=0;i <5;i++)
{
CString a ;
a.Format("%d",i);
m_ctrlTree.InsertItem(a, TVI_ROOT, TVI_FIRST);
}

}

插入的结果为
4
3
2
1
0
回复
healer_kx 2009-08-07
HTREEITEM InsertItem( LPCTSTR lpszItem,
int nImage,
int nSelectedImage,
HTREEITEM hParent = TVI_ROOT,
HTREEITEM hInsertAfter = TVI_LAST
);
选择一个合适的API了。
回复
zouhj2009 2009-08-07
什么意思 不懂 初学
回复
healer_kx 2009-08-07
一直往Pos 0位置插入。
回复
发动态
发帖子
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
社区公告
暂无公告