Foxtable(狐表)用户栏目专家坐堂 → 切换不同页签后改变目录树节点背景颜色


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

主题:切换不同页签后改变目录树节点背景颜色

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


加好友 发短信
等级:狐精 帖子:3205 积分:21299 威望:0 精华:0 注册:2016/3/28 16:57:00
切换不同页签后改变目录树节点背景颜色  发帖心情 Post By:2023/2/24 13:01:00 [只看该作者]

老师,我切换不同页签后,改变目录树背景颜色无效,请老师看看哪儿问题,代码如下:
'选择不同页签后,自动跳转到对应的导航
Dim pag As WinForm.TabControl = e.Form.Controls("tabControl1")
Dim st As String = pag.S  electedPage.Name
Dim tr As WinForm.TreeView = e.Form.Controls("TreeView1")
For Each n As WinForm.TreeNode In tr.AllNodes
    If n.Text.IndexOf (st) >= 0 Then
        tr.S  electedNode = tr.Nodes(n.ParentNode.Index).Nodes(n.Index)
        n.I conF ile = "2.png"
        n.ParentNode.I  conF ile = "3.png"
        n.Backcolor = Color.FromARGB(0, 120, 215)
    Else
        n.I  c
        n.Backcolor = Color.FromARGB( 230, 230, 230)
    End If
Next


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

[此贴子已经被作者于2023/2/24 13:33:46编辑过]

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


加好友 发短信
等级:超级版主 帖子:110559 积分:562685 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/2/24 13:32:00 [只看该作者]

tr.S  electedNode = tr.Nodes(n.ParentNode.Index).Nodes(n.Index)
改为
tr.S  electedNode = n

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


加好友 发短信
等级:狐精 帖子:3205 积分:21299 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2023/2/24 13:36:00 [只看该作者]

改了n背景色还是无效,焦点在目录书上没有问题,是不是因为交点不在目录树上,没法指定背景色呢,
[此贴子已经被作者于2023/2/24 13:42:37编辑过]

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


加好友 发短信
等级:超级版主 帖子:110559 积分:562685 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/2/24 13:44:00 [只看该作者]

目录树是这样的,没有焦点才能显示自定义背景色,选中节点的背景色无法更改的。

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


加好友 发短信
等级:狐精 帖子:3205 积分:21299 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2023/2/24 13:47:00 [只看该作者]

那指定背景应该是没问题的啊
这样写还报错:
tr.S  electedNode = n.Nodes(n.ParentNode.Index).Nodes(n.Index)


图片点击可在新窗口打开查看此主题相关图片如下:222.jpg
图片点击可在新窗口打开查看
示例文件:

以下内容是专门发给有点蓝浏览




[此贴子已经被作者于2023/2/24 13:51:49编辑过]

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


加好友 发短信
等级:超级版主 帖子:110559 积分:562685 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/2/24 13:52:00 [只看该作者]

完全多此一举,直接tr.S  electedNode = n就行了

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


加好友 发短信
等级:狐精 帖子:3205 积分:21299 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2023/2/24 13:52:00 [只看该作者]

也不行,还是错行的,我把示例文件传楼上了,请老师看看
资产管理和合同管理做了窗口可以测试
[此贴子已经被作者于2023/2/24 13:55:28编辑过]

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


加好友 发短信
等级:超级版主 帖子:110559 积分:562685 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/2/24 14:06:00 [只看该作者]

测试没有问题啊,怎么测试,什么地方有问题?

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


加好友 发短信
等级:狐精 帖子:3205 积分:21299 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2023/2/24 14:15:00 [只看该作者]

代码:
'选择不同页签后,自动跳转到对应的导航
Dim pag As WinForm.TabControl = e.Form.Controls("tabControl1")
Dim st As String = pag.S  elect edPage.Name
Dim tr As WinForm.TreeView = e.Form.Controls("TreeView1")
For Each n As WinForm.TreeNode In tr.AllNodes
    If n.Text.IndexOf (st) >= 0 Then
        tr.S  electedNode = n 'tr.Nodes(n.ParentNode.Index).Nodes(n.Index)
        MessageBox.Show("父节点" & n.ParentNode.Index)
        MessageBox.Show("子节点:"& n.Index)
        n.I conF ile = "2.png"
        n.P arent Node.I conF ile = "3.png"
        n.ForeColor = Color.Red 'FromARGB(0, 120, 215)
        n.Backcolor = Color.FromARGB(0, 120, 215)
    Else
        n.I conF ile = "1.png"
    End If
Next
测试顺序:
先打开资产统计管理,在打开屋内物品管理,绘制了资产统计管理,正确的应该绘制屋内物品管理才对啊:

图片点击可在新窗口打开查看此主题相关图片如下:11.jpg
图片点击可在新窗口打开查看
在页签上切换回 资产统计管理,结果把屋内物品管理背景绘制了,正确的应该绘制资产统计管理的目录树才对啊。

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


[此贴子已经被作者于2023/2/24 14:16:24编辑过]

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


加好友 发短信
等级:超级版主 帖子:110559 积分:562685 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/2/24 14:31:00 [只看该作者]

我这边测试正常,白色背景,红色图片,说明就是选中状态

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


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