Foxtable(狐表)用户栏目专家坐堂 → 各位老师,为什么默认全选,前面框框里没有显示?


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

主题:各位老师,为什么默认全选,前面框框里没有显示?

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


加好友 发短信
等级:童狐 帖子:214 积分:1386 威望:0 精华:0 注册:2017/5/13 15:13:00
各位老师,为什么默认全选,前面框框里没有显示?  发帖心情 Post By:2017/6/29 17:08:00 [只看该作者]

e.Form.Controls("TreeView1").BuildTree("表c", "别人编号|我们编号")
Dim nd = e.Form.Controls("TreeView1").nodes.insert("所有", 0)
nd.checked = True
Tables("表c").Filter = ""


Dim trv As WinForm.TreeView = e.Sender
Dim flt As String
If e.Node.Text = "所有" AndAlso e.node.Checked Then
    flt = ""
Else
    flt = "1=2"
    For Each nd As WinForm.TreeNode In e.node.Nodes '清除子节点选中状态
        nd.Checked = e.node.Checked
    Next
    If e.node.ParentNode IsNot Nothing Then '去掉父节点选中状态
        e.node.ParentNode.Checked = False
    End If
    For Each nd As WinForm.TreeNode In trv.AllNodes
        If nd.Checked Then
            If flt > "" Then
                flt = flt & " Or "  '注意用or而不是And
            End If
            If nd.Level = 0 Then '注意下面的条件都要用括号括起来
                flt = flt & "( 别人编号 = '" & nd.Text & "')"
            Else
                flt = flt & "( 别人编号 = '" & nd.ParentNode.Text & "' And 我们编号 = '" & nd.Text & "')"
            End If
        End If
    Next
End If
Tables("表c").Filter = flt
-----------------------
有请老师百忙之中,指点下!
图片点击可在新窗口打开查看此主题相关图片如下:未标题-3.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/29 17:12:00 [只看该作者]

你想全选?

 

Dim trv As WinForm.TreeView  = e.Form.Controls("TreeView1")
trv.BuildTree("表c", "别人编号|我们编号")
Dim nd As WinForm.TreeNode = trv.nodes.insert("所有", 0)
Tables("表c").Filter = ""
For Each nd In trv.AllNodes
    nd.Checked = True
Next

[此贴子已经被作者于2017/6/29 17:27:26编辑过]

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


加好友 发短信
等级:童狐 帖子:214 积分:1386 威望:0 精华:0 注册:2017/5/13 15:13:00
  发帖心情 Post By:2017/6/29 17:22:00 [只看该作者]

老师您这代码放哪里?afterload?

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/29 17:23:00 [只看该作者]

 是的,AfterLoad事件。

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


加好友 发短信
等级:童狐 帖子:214 积分:1386 威望:0 精华:0 注册:2017/5/13 15:13:00
  发帖心情 Post By:2017/6/29 17:25:00 [只看该作者]

trv.BuildTree("表c", "别人编号|我们编号")
这段报错

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/29 17:27:00 [只看该作者]

Dim trv As WinForm.TreeView  = e.Form.Controls("TreeView1")
trv.BuildTree("表c", "别人编号|我们编号")
Dim nd As WinForm.TreeNode = trv.nodes.insert("所有", 0)
Tables("表c").Filter = ""
For Each nd In trv.AllNodes
    nd.Checked = True
Next

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


加好友 发短信
等级:童狐 帖子:214 积分:1386 威望:0 精华:0 注册:2017/5/13 15:13:00
  发帖心情 Post By:2017/6/29 17:31:00 [只看该作者]

可以了 太牛了,多谢老师!
这两段语句一样的啊,为啥第一段 报错
第二段正常?

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/29 17:33:00 [只看该作者]

2楼的第一句代码写错了。后来改了。

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


加好友 发短信
等级:童狐 帖子:214 积分:1386 威望:0 精华:0 注册:2017/5/13 15:13:00
  发帖心情 Post By:2017/6/29 17:49:00 [只看该作者]

受教了,辛苦,辛苦

 回到顶部