Foxtable(狐表)用户栏目专家坐堂 → 目录树结点查找定位的问题


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

主题:目录树结点查找定位的问题

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


加好友 发短信
等级:一尾狐 帖子:457 积分:3523 威望:0 精华:0 注册:2016/1/22 18:17:00
目录树结点查找定位的问题  发帖心情 Post By:2016/5/20 15:25:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:目录树查找定位.table



如何实现目录树结点的 查找定位问题


如有目录树节点 1000个

在查找框中 输入  stock  然后 点击 查找下一个 则依向下查找定位于定位于下一个

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/5/20 15:30:00 [只看该作者]

Dim txt As String = e.Form.controls("TextBox1").Text
If txt = "" Then '如果下拉框没有输入内容,则无需查询
    Return
End If
Dim trv As WinForm.TreeView =  e.Form.Controls("TreeView1")
Dim Start As Integer
Dim idx As Integer = - 1
If trv.SelectedNode IsNot Nothing Then '获取当前节点位置.
    Dim FullName As String = trv.SelectedNode.FullName
    For i As Integer = 0 To trv.AllNodes.count - 1
        If trv.AllNodes(i).FullName = FullName  Then
            Start = i
            Exit For
        End If
    Next
End If
For i As Integer = Start + 1 To trv.AllNodes.count - 1  '从当前节点的下一个节点开始查找
    Dim nd As WinForm.TreeNode = trv.AllNodes(i)
    If nd.Text.IndexOf(txt) >= 0 Then
        trv.SelectedNode = nd
        nd.EnsureVisible
        idx = i '将找到的位置复制给变量idx
        Exit For
    End If
Next
If  idx = -1 Then 'idx的值如果等于初始值-1,表示没有找到下一个符合条件的节点,那么从第一个节点开始重新查找.
    For i As Integer = 0 To Start - 1
        Dim nd As WinForm.TreeNode = trv.AllNodes(i)
        If nd.Text.IndexOf(txt) >= 0 Then
            trv.SelectedNode = nd
            nd.EnsureVisible
            Exit For
        End If
    Next
End If
trv.Select()

 

http://www.foxtable.com/help/topics/2961.htm

 


 回到顶部