当前位置:首页 > 投稿 > 正文内容

狐表软件是什么(给狐表的递归教程加上死循环判断)

福瑞号2022-12-11 09:16:19投稿289

1思路说明

狐表软件是什么(给狐表的递归教程加上死循环判断)-图1

基于官方的递归文档案例,适当修改代码,可以判断出递归死循环的路线,及时停止(思路来自最新版Bom目录树玩法)

  1. 每条分支,都不应该重复利用主键

  2. 不同分支,可以重复利用主键,毕竟bom会重复利用

所以:在每条分支,都用一个空白的字典,记录主键,保持不重复。如果重复,就遍历出来展示告知用户

2递归开始的代码:

Dim tr As WinForm.TreeView = e.Form.Controls("TreeView1")Dim nd As WinForm.TreeNodeDim dt As DataTable = DataTables("表A")tr.StopRedraw()tr.Nodes.Cleartr.Nodes.Add("全部")Dim dgDic As New Dictionary(of String,String)'递归记录,防止死循环For Each dr As DataRow In dt.datarows    If dr.IsNull("父键") Then        nd = tr.Nodes.Add(dr("键"),dr("标题"))        Functions.Execute("AddChildren",nd,dt,dgDic)    End If    dgDic.Clear '一条递归用一套记录Nexttr.ResumeRedraw()

3内部函数:

Dim nd As WinForm.TreeNode = args(0)Dim dt As DataTable = args(1)Dim dgDic As Dictionary(of String,String) = args(2)Dim drs As  List(of DataRow)drs = dt.Select("[父键] = '" & nd.name & "'")For Each dr As DataRow In drs    Dim cd As Winform.TreeNode = nd.Nodes.Add(dr("键"),dr("标题"))    If dgDic.ContainsKey(dr("键")) = False Then        dgDic.Add(dr("键"),dr("标题"))        Functions.Execute("AddChildren",cd,dt,dgDic)    Else        Dim s As String ="出现死循环:"        For Each key As String In dgDic.Keys            If key = dr("键") Then                s &= "[" & dgDic(key) & "]→"            Else                s &=dgDic(key) & "→"            End If                    Next        s &=dr("标题") & "→[" & dgDic(dr("键")) & "]"        MessageBox.Show(s)    End IfNext

扫描二维码推送至手机访问。

版权声明:本文由福瑞号发布,如需转载请注明出处。

本文链接:https://www.furui.com.cn/15488.html

“狐表软件是什么(给狐表的递归教程加上死循环判断)” 的相关文章

各种奶茶图片大全高清(“秋天的第一杯奶茶”刷屏)

各种奶茶图片大全高清(“秋天的第一杯奶茶”刷屏)

最近几天 “秋天的第一杯奶茶” 在网上刷屏 还火上了微博热搜 晒图的方法很简单 只要放出一张奶茶的照片 搭配上这句话就可以 截图红包发朋友圈的 也越来越多 不少人满脸问号的问: 这到底是什么梗啊! 看着看着 猝不及防就被塞了一嘴狗粮 ↓↓↓ 有网友给出各种猜测的解释 倒是蛮有道理的 小编...

北京异地高考(异地高考是按学籍还是户口)

北京异地高考(异地高考是按学籍还是户口)

异地高考是按学籍还是按户口?按照户口所在地进行报名与录取。其实,这个问题其实很简单,异地高考就是按高考报名所在地进行录取的,也就是在哪里报名就是哪里录取,问题关键不是录取而在报名。而报名所在地,一般都选择户籍所在地或者学籍所在地,不过很多人的学籍所在地就是户籍所在地。 一、高考报名 高考报名用学...

大基数是什么(大基数人群的减肥之路该何去何从)

大基数是什么(大基数人群的减肥之路该何去何从)

虽然现在越来越多的人都喜欢运动,但还是有体重比较大的小伙伴,对于这些小伙伴可能就是自己没有运动的爱好,又没有控制自己的饮食,才导致自己体重超标,身材变形。当意识到自己的体重时,却又不知道知道该怎么运动?今天,我们一起来看看大基数人群该怎么运动? 首先,我们先了解一下什么是大基数人群? 大基数和小基...

中国邮政编码(我国邮政编码的位数分别代表了什么)

中国邮政编码(我国邮政编码的位数分别代表了什么)

我国邮政编码的位数分别代表了省、邮区和市里的投递局。 1.中国邮政编码实行“四级六码”制,第一位第二位数字表示省,第三位数字表示邮区,第四位数字表示县或者市,最后两位数字表示投递局。例:以324115这 个邮编为例,32表示浙江省(31、32都代表的是浙江省),324表示浙江省衢州市邮政局(三级邮区...

一般布偶猫多少钱一只(布偶猫价格)

一般布偶猫多少钱一只(布偶猫价格)

布偶猫一直以来都是非常受欢迎的,爱猫的人看一眼就会爱上它。那么今天我们就一起来了解一下布偶猫的价格,要入手的铲屎官不要买贵了! 布偶猫多少钱一只? 因为布偶猫长相好看,所以布偶猫的价格炒得比较高,以前基本都要上万元才能买到。 现在布偶猫的价格一般在2000~4000元左右就能买到了,2000元左右...

郝蕾个人资料(郝蕾王珞丹殷桃前任)

郝蕾个人资料(郝蕾王珞丹殷桃前任)

7月13日,李光洁在微博晒出一组照片。图片中他和娇妻隋雨蒙一同出镜,二人头靠在一起,手中举着“耶”的手势,一副岁月静好的模样。 看起来,李光洁这是在为自己的老婆庆祝生日。另一张照片里一家三口齐活了,隋雨蒙抱着萌娃,李光洁眼里满满地宠爱。 李光洁1981年生,比他老婆整整大10岁。隋雨蒙呢,相较于...