Foxtable(狐表)用户栏目专家坐堂 → 求一个代码,点击表格中某一行的时候,自动定位到目录树节点


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

主题:求一个代码,点击表格中某一行的时候,自动定位到目录树节点

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


加好友 发短信
等级:三尾狐 帖子:723 积分:5058 威望:0 精华:0 注册:2014/12/30 16:52:00
求一个代码,点击表格中某一行的时候,自动定位到目录树节点  发帖心情 Post By:2016/8/16 17:15:00 [只看该作者]

如题
[此贴子已经被作者于2016/8/16 17:15:28编辑过]

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


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

 循环所有的节点,判断节点的属性 .text 或者 .fullname 等,确定是否对应。

 

Dim trv As WinForm.TreeView = e.form.Controls("TreeView1")
For Each nd As  WinForm.TreeNode In trv.AllNodes
    If nd.text = "abc" Then
        trv.SelectedNode = nd
    End If
Next

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


加好友 发短信
等级:三尾狐 帖子:723 积分:5058 威望:0 精华:0 注册:2014/12/30 16:52:00
这个代码写在哪个事件比较好呢  发帖心情 Post By:2016/8/16 17:27:00 [只看该作者]

就是点击表中的行的时候就执行这个代码,放在哪个事件中比较好呢

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


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

可以写在 Click 事件,也可以写在 currentChanged 事件

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


加好友 发短信
等级:三尾狐 帖子:723 积分:5058 威望:0 精华:0 注册:2014/12/30 16:52:00
代码错误,求帮改  发帖心情 Post By:2016/8/16 17:46:00 [只看该作者]

Dim trv As WinForm.TreeView = e.form.Controls("TreeView1")
For Each nd As  WinForm.TreeNode In trv.AllNodes
    ''If nd.text = "abc" Then
    If nd.Text = nd.DataRow("公司编号") & " " & nd.text  Then
        trv.SelectedNode = nd
    End If
Next

 

对象实例错误。

[此贴子已经被作者于2016/8/16 17:49:50编辑过]

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


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

Dim trv As WinForm.TreeView = e.form.Controls("TreeView1")
For Each nd As  WinForm.TreeNode In trv.AllNodes
    If nd.Text = e.Table.Current("某列")  Then
        trv.SelectedNode = nd
    End If
Next


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


加好友 发短信
等级:三尾狐 帖子:723 积分:5058 威望:0 精华:0 注册:2014/12/30 16:52:00
谢谢搞定不过有个问题  发帖心情 Post By:2016/8/16 18:24:00 [只看该作者]

因为选定目录树节点的节点背景色是蓝色,当焦点不再目录树那边的时候是一个白色背景色,所以之前为了美观,我把目录树的背景色也设置白色了,刚才用了这个代码,幸亏因为有2个分节点行点击了一下,左边的目录树展开我才知道代码执行了,要不然还真是明明对了却不知道哪里错了呢,说这个的意思就是,选中行的时候左边的节点选中的时候能不能也是蓝色,而不是白色呢,因为这个白色有点像BUG的感觉。不太喜欢。有方法改这个吗
图片点击可在新窗口打开查看此主题相关图片如下:69.png
图片点击可在新窗口打开查看

 

 

 


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

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

 

这样写颜色会混乱呢。

[此贴子已经被作者于2016/8/16 18:41:00编辑过]

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


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

Dim trv As WinForm.TreeView = e.form.Controls("TreeView1")
For Each nd As  WinForm.TreeNode In trv.AllNodes
    If nd.Text = e.Table.Current("某列")  Then
        trv.SelectedNode = nd

        trv.Select

        Exit For
    End If
Next


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


加好友 发短信
等级:三尾狐 帖子:723 积分:5058 威望:0 精华:0 注册:2014/12/30 16:52:00
这样的话  发帖心情 Post By:2016/8/16 21:29:00 [只看该作者]

这样的话这个代码是放在click上把,放到currentchange的话是一蓝一白交替,另外有没有改成其他颜色的方法?

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


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


 回到顶部