vc++MFC编程怎么 遍历 窗口中 树控件上的数据?不用数据库做……
1个回答
展开全部
跟正常的树一样,比如前序遍历
bool CMy1Dlg::preorder(HTREEITEM t)
{
if(t)
{
UpdateData(true);
m_show+=c_tree.GetItemText(t);
m_show+=_T(",");
UpdateData(false);
if(preorder(c_tree.GetNextSiblingItem(t)))
{
if(preorder(c_tree.GetChildItem(t)))
{
return true;
}
}
return false;
}
else
{
return true;
}
}
void CMy1Dlg::OnBnClickedButton2()
{
// TODO: 在此添加控件通知处理程序代码
m_show=_T("");
UpdateData(false);
preorder(c_tree.GetRootItem());
}
其中c_tree是树控件的变量,m_show是一个编辑框的CString变量,用来输出遍历的结果,preorder这个函数放在对话框类的中
这里的OnBnClickedButton2这个按钮事件是用来触发遍历的
如果需要源程序的话留个邮箱发给你
bool CMy1Dlg::preorder(HTREEITEM t)
{
if(t)
{
UpdateData(true);
m_show+=c_tree.GetItemText(t);
m_show+=_T(",");
UpdateData(false);
if(preorder(c_tree.GetNextSiblingItem(t)))
{
if(preorder(c_tree.GetChildItem(t)))
{
return true;
}
}
return false;
}
else
{
return true;
}
}
void CMy1Dlg::OnBnClickedButton2()
{
// TODO: 在此添加控件通知处理程序代码
m_show=_T("");
UpdateData(false);
preorder(c_tree.GetRootItem());
}
其中c_tree是树控件的变量,m_show是一个编辑框的CString变量,用来输出遍历的结果,preorder这个函数放在对话框类的中
这里的OnBnClickedButton2这个按钮事件是用来触发遍历的
如果需要源程序的话留个邮箱发给你
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询