以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  目录树 计数对齐  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=56444)

--  作者:Lc
--  发布时间:2014/9/5 11:11:00
--  目录树 计数对齐

For Each nd As WinForm.TreeNode In trv.AllNodes
    Dim Value()As String
    Value = nd.FullName.Split("\\") \'注意这里用FullName属性,不能用FullPath属性
Select Case nd.Level
    Case 0     
        nd.Text = nd.Text & " (" &  Tables("基本信息查询_Table1").Compute("Count([学生姓名])",) & "人))"
    Case 1      
        nd.Text = nd.Text  & " (" & Tables("基本信息查询_Table1").Compute("Count([学生姓名])","学期 = \'"& e.Form.Controls("学期").Text  & "\'and 班级 = \'"& nd.Text &"\'") & "人)"
End Select
Next

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

怎样把节点后计数对齐,代码怎样改?请指点,谢谢

[此贴子已经被作者于2014-9-5 11:13:06编辑过]

--  作者:有点甜
--  发布时间:2014/9/5 11:18:00
--  
For Each nd As WinForm.TreeNode In trv.AllNodes
    Dim Value()As String
    Value = nd.FullName.Split("\\") \'注意这里用FullName属性,不能用FullPath属性
    Select Case nd.Level
        Case 0
            nd.Text = nd.Text.PadRight(13) & " (" &  Tables("基本信息查询_Table1").Compute("Count([学生姓名])",) & "人))"
        Case 1
            nd.Text = nd.Text.PadRight(15)  & " (" & Tables("基本信息查询_Table1").Compute("Count([学生姓名])","学期 = \'"& e.Form.Controls("学期").Text  & "\'and 班级 = \'"& nd.Text &"\'") & "人)"
    End Select
Next

--  作者:Lc
--  发布时间:2014/9/5 12:17:00
--  

我想向这样好看点

 


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

--  作者:有点甜
--  发布时间:2014/9/5 14:35:00
--  
For Each nd As WinForm.TreeNode In trv.AllNodes
    Dim Value()As String
    Value = nd.FullName.Split("\\") \'注意这里用FullName属性,不能用FullPath属性
    Dim str As String = ""
    Select Case nd.Level
        Case 0
            str = Tables("基本信息查询_Table1").Compute("Count([学生姓名])",)
            nd.Text = nd.Text.PadRight(13) & " (" & str.PadLeft(6) & "人))"
        Case 1
            str = Tables("基本信息查询_Table1").Compute("Count([学生姓名])","学期 = \'"& e.Form.Controls("学期").Text  & "\'and 班级 = \'"& nd.Text &"\'")
            nd.Text = nd.Text.PadRight(15)  & " (" & str.PadLeft(6) & "人)"
    End Select
Next

--  作者:程兴刚
--  发布时间:2014/9/5 16:28:00
--  
这样不行的,中英文字数不统一会导致长短不一至,需要用到字节处理方法,我在论坛有过解答和楼主一样需求的帖子,搜一下即可!
--  作者:Lc
--  发布时间:2014/9/8 17:57:00
--  
谢谢
--  作者:程兴刚
--  发布时间:2014/9/8 23:47:00
--  

请看本贴:

 

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=21386&authorid=0&page=0&star=1