VC 6.0+ODBCID Name ParentName LevelNum
1 中国 0 0
2 四川省 中国 1
3 重庆市 中国 1
4 乐山市 四川省 2
5 德阳市 四川省 2这是表里的内容。
如何根据内容,在当前目录下,来建立一个如下的文件目录。中国
----四川省
----------乐山市
----------德阳市
----重庆市
这似乎是一个递归的问题,但跟建立树控件又有很大的不同。恳请老师们的帮助。
CRecordSet recordset;
strSQL="SELECT * FROM 行政区划";
if(!recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))
{
MessageBox("打开数据库失败!","数据库错误",MB_OK);
return;
}
recordset.MoveFirst();
while (!recordset.IsEOF())
{
//用if(LevelNum)肯定不行,因为LevelNum可以递增到无限大
//这里该如何写代码呢?请老师们帮忙给点提示。有大致的参看代码更好。
recordset.MoveNext();
}
recordset.Close();
1 中国 0 0
2 四川省 中国 1
3 重庆市 中国 1
4 乐山市 四川省 2
5 德阳市 四川省 2这是表里的内容。
如何根据内容,在当前目录下,来建立一个如下的文件目录。中国
----四川省
----------乐山市
----------德阳市
----重庆市
这似乎是一个递归的问题,但跟建立树控件又有很大的不同。恳请老师们的帮助。
CRecordSet recordset;
strSQL="SELECT * FROM 行政区划";
if(!recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))
{
MessageBox("打开数据库失败!","数据库错误",MB_OK);
return;
}
recordset.MoveFirst();
while (!recordset.IsEOF())
{
//用if(LevelNum)肯定不行,因为LevelNum可以递增到无限大
//这里该如何写代码呢?请老师们帮忙给点提示。有大致的参看代码更好。
recordset.MoveNext();
}
recordset.Close();
然后扫描这个数组,其中要用到递归。
或者请老师说的更详细一些。
非常感谢!请继续指教!
非常感谢您!先给分。从逻辑上看,实现它应该没有问题。
如遇到困难,我会继续发帖请教。麻烦了。
{
CString sCity;
CString sCityAdds;
}cityadds;//这个结构没有问题
//下面这个用法是什么意思?我还没有用到过,查阅基础书,也没有答案。
//恳请happyparrot 老师的帮助
typedef CArray<cityadds,cityadds&> CCityAddsArray;//在VC中,编译提示:TreeDlg.h(15) : error C2143: syntax error : missing ';' before '<'