Foxtable(狐表)用户栏目专家坐堂 → [求助]目录树的复选框如何根据条件进行自动选择?


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

主题:[求助]目录树的复选框如何根据条件进行自动选择?

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


加好友 发短信
等级:五尾狐 帖子:1145 积分:8926 威望:0 精华:0 注册:2012/7/10 9:09:00
[求助]目录树的复选框如何根据条件进行自动选择?  发帖心情 Post By:2024/4/29 11:04:00 [显示全部帖子]

老师好,如下图,在生成的目录树中,在下边设置一个刷新按钮,如果面试序号列没有填写内容,则每个面试室复选框处于未选中状态,如果面试序号列填写有内容时,则自动选中复选框(目的是看到第几面试室的面试序号已填写),另一个方面,当面试序号不为空时,如果面试成绩也不为空,则复选框的第几面试室的字体颜色显示为红色(目的是看到第几面试室显示为红色时,就知道此面试室已输入成绩),刷新按钮的代码如何写,请专家指导,谢谢!
附图:
图片点击可在新窗口打开查看此主题相关图片如下:截图00.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:五尾狐 帖子:1145 积分:8926 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2024/4/29 11:20:00 [显示全部帖子]

有点蓝老师,只要填写哪怕一个面试序号,就勾选

[此贴子已经被作者于2024/4/29 11:20:03编辑过]

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


加好友 发短信
等级:五尾狐 帖子:1145 积分:8926 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2024/4/29 11:21:00 [显示全部帖子]

面试序号列不为空,就勾选,面试成绩不为空,就显示为红色


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


加好友 发短信
等级:五尾狐 帖子:1145 积分:8926 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2024/4/29 11:29:00 [显示全部帖子]

Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree("笔试成绩", "天数|面试室|分组")
trv.Nodes.Insert("显示所有行",0)


Dim Value() As String
Value = e.Node.FullPath.Split("\")
Select Case e.Node.Level
    Case 0
        If e.Node.Text = "显示所有行" Then
            Tables("号对人_号对人").Filter = ""
        Else
            Tables("号对人_号对人").Filter = "[天数] = '" & Value(0) & "'"
        End If
    Case 1
        Tables("号对人_号对人").Filter = "[天数] = '" & Value(0) & "' And [面试室] = '" & Value(1) & "'"
    Case 2
        Tables("号对人_号对人").Filter = "[天数] = '" & Value(0) & "' And [面试室] = '" & Value(1) & "' And [分组] = '" & Value(2) & "'"
End Select





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


加好友 发短信
等级:五尾狐 帖子:1145 积分:8926 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2024/4/29 11:46:00 [显示全部帖子]

谢谢有点蓝,第向面试室显示红色,能不能?

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


加好友 发短信
等级:五尾狐 帖子:1145 积分:8926 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2024/4/29 14:47:00 [显示全部帖子]

设置目录树颜色


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


加好友 发短信
等级:五尾狐 帖子:1145 积分:8926 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2024/4/29 14:48:00 [显示全部帖子]

当表格中的面试成绩列不为空时,目录树字显示红色

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


加好友 发短信
等级:五尾狐 帖子:1145 积分:8926 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2024/4/29 16:19:00 [显示全部帖子]

有点蓝老师, 第一节点为天数,共三天,第二节点为第几面试室(每天都有相同的面试室),判断第几天,第几面试室的面试序号是否为空,如果不为空,则复选框选中,否则不选中;然后,再判断第几天第几面试室的面试成绩是否为空,如果不为空,则目录树显示为红色,否则显示黑色,我修改了下述代码,现在是当第一天的第一面试室面试序号为空时,第二天的第一面试室不为空时,目录树的第一天的第一面试室复选框还是选中了,在查找时,怎么加上第一层的节点判断,谢谢。
代码如下:(出错)
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildTree("笔试成绩", "天数|面试室|分组")
trv.Nodes.Insert("显示所有行",0)

For Each nd As WinForm.TreeNode In trv.AllNodes
    If nd.Level = 1 Then
        nd.Checked = (DataTables("笔试成绩").Find("天数='"& nd.ParentNode.text & "'and 面试室='" & nd.Text & "' and 面试序号 is not null") IsNot Nothing)
    End If
Next

For Each nd As WinForm.TreeNode In trv.AllNodes
    If nd.Level = 1 And nd.Checked = (DataTables("笔试成绩").Find("天数='"& nd.ParentNode.text & "'and 面试室='" & nd.Text & "' and 面试成绩 is not null") IsNot Nothing)  Then
        nd.ForeColor = IIf(nd.Checked, Color.Red, Color.Black)
    End If
Next
 


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


加好友 发短信
等级:五尾狐 帖子:1145 积分:8926 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2024/4/29 16:21:00 [显示全部帖子]

目录树如下:
图片点击可在新窗口打开查看此主题相关图片如下:截图01.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:五尾狐 帖子:1145 积分:8926 威望:0 精华:0 注册:2012/7/10 9:09:00
  发帖心情 Post By:2024/4/29 16:32:00 [显示全部帖子]

有点蓝老师,给目录树变红色,是依据“面试成绩”列是否为空,如果不为空,则标红,否则标黑,上述代码,是只要面试序号不为空,都标红,这不是我需要的,谢谢

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