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

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

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

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

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

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

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

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

高考成绩查询2013(如何查询自己的高考成绩)

高考成绩查询2013(如何查询自己的高考成绩)

6月下旬,各省市的高考成绩已经放榜,考生们也都陆续考试查成绩,对比高校填报志愿了,那么查询高考成绩都有哪些便捷,高效的通道和方式方法呢,我们一起来看一下。 一、学信网查询 1、登录学信网 2、进入之后在新页面中点击【成绩与学历认证】下的【查看】按钮 3、点击”高考成绩单“ 4、输入证件号码、报告编...

南斯拉夫联盟(1999年)

南斯拉夫联盟(1999年)

北约轰炸南联盟的时候,南联盟不仅反击了,而且反击的非常勇猛。在南联盟反击的过程中,还击落了一架美国的F117战斗轰炸机,创下了F117战斗轰炸机服役期间唯一一次被击落的记录。然而在绝对的实力差距面前,南联盟的反击并没有改变战争的结果,最终北约以零伤亡的代价,逼迫南联盟签字求和,南联盟也最终走向了分裂...

河北白沟属于哪个市(河北保定市白沟箱包产业提质增效——质量制胜市场更广阔)

河北白沟属于哪个市(河北保定市白沟箱包产业提质增效——质量制胜市场更广阔)

在河北白沟新城的北京2022年冬奥会产品特许销售门店,顾客在选购背包。 冯 云(中经视觉) 在河北白沟新城质量检测中心,检验人员对箱包产品的甲醛、偶氮含量进行检验。  冯 云摄(中经视觉) 白沟,被誉为“中国箱包之都”。这个隶属于河北省保定市的小城,区域面积仅54平方公里,已发展成为全国最大的箱包...

兀怎么读wu还是pai(茶pai还是茶兀)

兀怎么读wu还是pai(茶pai还是茶兀)

茶兀应当是读[chá pài],π同“派”( pài)。农夫山泉茶π,自成一派!同时,兀采用的是圆周率用希腊字母 π(读作pài)表示,是一个常数(约等于3.141592654),是代表圆周长和直径的比值。它是一个无理数,即无限不循环小数。 一般情况下,圆周率为3.14通常用于近似计算。再以十位小...

格力空调官网价格表(格力空调价格表)

格力空调官网价格表(格力空调价格表)

格力空调价格表(详细解析格力空调哪个系列最好)选出值得推荐的格力空调型号(长期更新) 格力空调系列非常的多,空调的价格各不相同。下面小编来盘点下目前各大平台销量比较好的格力空调的各个型号以及格力空调的价格给大家分享下。(数据来源于京东12月份,如果 与活动价格可能还会降低) 我来看一组京东官网销...

吉林艺术学院招生网(艺术类)

吉林艺术学院招生网(艺术类)

艺术类(历史)招生计划,本科提前批 非平行组 一、按独立设置艺术院校招生政策招生的院校: 清华大学(北京) 中央音乐学院(北京) 中国传媒大学(北京) 北京舞蹈学院(北京) 北京印刷学院(北京) 中央戏剧学院(北京) 中央美术学院(北京) 中央戏曲学院(北京) 北京服装学院(北京) 中国音乐学院...