Foxtable(狐表)用户栏目专家坐堂 → [求助]多列目录树代码修改


  共有2914人关注过本帖树形打印复制链接

主题:[求助]多列目录树代码修改

帅哥哟,离线,有人找我吗?
hanzhang98
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
[求助]多列目录树代码修改  发帖心情 Post By:2019/3/22 13:12:00 [只看该作者]

各位老师好!根据老师们的指导,下面的“目录树代码”已能正常运行和操作。现在想在其中的第一层节点再增加一些目录树项目,比如“性别”、“婚姻状况”、“政治面貌”、“现住址”等等,新增的第一层目录树项目的第二级节点内容均为表中相应列的自身内容去除重复内容后的值(比如:“政治面貌”的第二级节点内容就是其列自身内容去重后的“中共党员、民主党派、无党派人士”)。要想实现这样的功能(也就是用目录树来实现多列内容筛选),那下面的代码需要如何修改,请老师们帮忙指导。

[此贴子已经被作者于2019/4/30 10:18:07编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/3/22 15:31:00 [只看该作者]

判断一下第一层的节点的值是什么即可,如

 

Dim ary = e.node.fullpath.split("\")

If ary(0) = "性别" Then

    msgbox(ary.length)

    msgbox(ary(1)

ElseIf ary(0) = "政治面貌" Then

 

else

 

End If

 

如果还不会做,具体实例发上来测试


 回到顶部
帅哥哟,离线,有人找我吗?
hanzhang98
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
  发帖心情 Post By:2019/3/22 17:50:00 [只看该作者]

请老师帮忙指导!
[此贴子已经被作者于2019/4/30 10:18:45编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
hanzhang98
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
  发帖心情 Post By:2019/3/22 17:57:00 [只看该作者]

老师好。实例附件已上传。在3楼,请老师指导。谢谢!

 回到顶部
帅哥哟,离线,有人找我吗?
hanzhang98
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
  发帖心情 Post By:2019/3/22 18:53:00 [只看该作者]

老师好!我的意思是想将附件中的目录树做成如下面的图片中的那样!能不能实现,代码要如何改才行。谢谢!

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20190322184834.png
图片点击可在新窗口打开查看


 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107756 积分:548119 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/22 21:20:00 [只看该作者]

需要手工生成目录树,如:

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.Nodes.Add("全部")
Dim n As WinForm.TreeNode = trv.Nodes.Add("性别")
n.Nodes.Add("男")
n.Nodes.Add("女")

n = trv.Nodes.Add("民族")
For Each s As String In DataTables("员工信息").GetValues("民族")
    n.Nodes.Add(s)
Next

至于点击事件就比较麻烦了
需要判断每一个点击的节点属于那个分类的,然后再根据节点名称做筛选

 回到顶部
帅哥哟,离线,有人找我吗?
hanzhang98
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
  发帖心情 Post By:2019/3/23 10:20:00 [只看该作者]

谢谢老师指导。下面的代码运行出错(附图)应如何修改,请老师指导。谢谢!

错误提示:
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20190323101625.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2019/4/30 10:19:46编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107756 积分:548119 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/23 10:35:00 [只看该作者]

n = trv.Nodes.Add("岗类部门")
For Each s1 As String In DataTables("员工信息").GetValues("岗位类别","","岗类编码")
    Dim n1 As WinForm.TreeNode =  n.Nodes.Add(s1)
    For Each s2 As String In DataTables("员工信息").GetValues("工作部门","岗位类别='" & s1 & "'","部门编码")
        n1.Nodes.Add(s2)
    Next
Next

 回到顶部
帅哥哟,离线,有人找我吗?
hanzhang98
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:493 积分:3637 威望:0 精华:0 注册:2018/6/8 21:14:00
  发帖心情 Post By:2019/3/23 10:59:00 [只看该作者]

谢谢老师指导!按照老师的指导,目录树已生成,但点击节点的代码又出错,还的麻烦老师指导。

错误提示:
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20190323105730.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2019/4/30 10:19:25编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107756 积分:548119 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/23 11:17:00 [只看该作者]

以后麻烦代码直接贴上来即可,不要发那种带行号的,别人改也麻烦。

tbl.Filter = "性别 Like '%" & ary(0) & "%'"


 回到顶部
总数 14 1 2 下一页