以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]目录树 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=144415) |
-- 作者:江南小镇 -- 发布时间:2019/12/19 13:30:00 -- [求助]目录树 老师好,标出的列名称能否改变成{“部门”,“性别”}在目录树中显示。 Dim str() As String = {"应聘信息_部门","个人基本资料_性别"} \'定义筛选树中显示的列名 Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1") trv.Nodes.Insert("显示所有行",0) For Each c As String In str Dim n As WinForm.TreeNode = trv.Nodes.Add(c,c) For Each c2 As String In DataTables("人事档案_人事档案Table1").GetValues(c,c & " Is not null") n.Nodes.Add(c2,c2 & "(" & DataTables("人事档案_人事档案Table1").Compute("count(应聘信息_部门)",c & "=\'" & c2 & "\'") & "人)") Next Next |
-- 作者:有点蓝 -- 发布时间:2019/12/19 14:10:00 -- msgbox(c.split("_")(1)) |
-- 作者:江南小镇 -- 发布时间:2019/12/19 14:55:00 -- 老师,搞不好。 |
-- 作者:有点蓝 -- 发布时间:2019/12/19 15:03:00 -- Dim n As WinForm.TreeNode = trv.Nodes.Add(c,c.split("_")(1)) |
-- 作者:江南小镇 -- 发布时间:2019/12/19 15:31:00 -- 老师,点击目录树节点找不到部门、性别列。 Dim str() As String = {"应聘信息_部门","个人基本资料_性别"} \'定义筛选树中显示的列名 Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1") trv.Nodes.Insert("显示所有行",0) For Each c As String In str Dim n As WinForm.TreeNode = trv.Nodes.Add(c,c.split("_")(1)) For Each c2 As String In DataTables("人事档案_人事档案Table1").GetValues(c,c & " Is not null") n.Nodes.Add(c2,c2 & "(" & DataTables("人事档案_人事档案Table1").Compute("count(应聘信息_部门)",c & "=\'" & c2 & "\'") & "人)") Next Next |
-- 作者:有点蓝 -- 发布时间:2019/12/19 15:44:00 -- 点击目录树节点和上面的代码有什么关系? |
-- 作者:江南小镇 -- 发布时间:2019/12/19 18:56:00 -- 老师好
|
-- 作者:有点蓝 -- 发布时间:2019/12/20 8:25:00 -- 点击目录树会触发什么事件?到这个事件代码里找问题,比如NodeMouseClick事件 |
-- 作者:江南小镇 -- 发布时间:2019/12/20 9:10:00 -- 老师好 Dim str() As String = {"应聘信息_部门","个人基本资料_性别"} \'定义筛选树中显示的列名 Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1") trv.Nodes.Insert("显示所有行",0) For Each c As String In str Dim n As WinForm.TreeNode = trv.Nodes.Add(c,c.split("_")(1)) 老师,上面代码把列名称改变后目录树中的代码就找到了。下面代码老师帮忙修改谢谢了。 Dim Filter As String Dim d1 As String Select Case e.Node.Level Case 1 If e.Node.ParentNode.Text = "出生日期" Then Dim y As Date = new Date(cint(e.Node.Text.Split("(")(0)),1,1) \'取日期某部分? Filter = "个人基本资料_出生年月 >= #" & y & "# and 个人基本资料_出生年月 < #" & y.AddYears(1) & "#" ElseIf e.Node.ParentNode.Text = "基本工资" Then If e.node.text.Contains("以下") Then Filter = "应聘信息_期望薪资 <= " & e.node.name.Replace("以下","") ElseIf e.node.text.Contains("以上") Then Filter = "应聘信息_期望薪资 > " & e.node.name.Replace("以上","") Else Dim ar() As String = e.node.name.split("-") Filter = "应聘信息_期望薪资 >= " & ar(0) & " and 应聘信息_期望薪资 <= " & ar(1) End If Else Filter = e.Node.ParentNode.Text & " = \'" & e.Node.Text.Split("(")(0) & "\'" If e.Node.parentNode.text = "工龄" Then If e.Node.Text.Contains("年以下") Then filter = "应聘信息_入职时间 > #" & Date.Today.AddYears(-1 * val(e.Node.Name.Replace("年以下",""))) & "#" ElseIf e.Node.Text.Contains("年以上") Then filter = "应聘信息_入职时间 < #" & Date.Today.AddYears(-1 * val(e.Node.Name.Replace("年以上",""))) & "#" Else Dim ar() As String = e.Node.Name.replace("年","").Split("-") filter = "应聘信息_入职时间 <= #" & Date.Today.AddYears(-1 * val(ar(0))) & "#" & "And 应聘信息_入职时间 >= #" & Date.Today.AddYears(-1 * val(ar(1))-1) & "#" End If End If End If End Select Tables("人事档案_人事档案Table1").Filter = Filter
|
-- 作者:有点蓝 -- 发布时间:2019/12/20 9:58:00 -- e.Node.ParentNode.Text 改为e.Node.ParentNode.Name |