Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

如何调用目录树控件的NodeClick事件

wsl  发表于:2012-02-05 13:05:35  
复制

    本人是新手,敬请大家赐教。

    目录树上有许多节点,如权限设置,在权限设置中进行操作后,权限会发生改变,改变权限后,要重置目录树,重置目录树后,调用目录树控件的NodeClick事件,使工作直接回到权限这个节点上来。

    例子见附件。如何实现单击 当前工作节点 标签后使工作直接回到当前这个节点上来?

    先感谢了!

点击下载此附件

 

Top
西出阳关无故人 发表于:2012-02-05 15:46:51

Option Compare Database

Public k As String '记录每个选中的节点的key值


Private Sub Form_Load()
   Call FunTreeView
End Sub


Private Sub LabNoteText_Click()
   Forms!frmsysMain.TreeMy.Nodes.Clear
   Call FunTreeView
   Forms!frmsysMain!TreeMy.SetFocus
  '在这里如何调用TreeMy_NodeClick事件?
   For I = 1 To Forms!frmsysMain.TreeMy.Nodes.Count  '循环节点
      If Forms!frmsysMain.TreeMy.Nodes(I).Key = k Then '找到K节点
        Forms!frmsysMain.TreeMy.Nodes(I).Expanded = True '展开K节点
        Forms!frmsysMain.TreeMy.Nodes(I).Selected = True '选中K节点
        Forms!frmsysMain.TreeMy.Nodes(I).EnsureVisible '让K节点可以看到,在比较多的树中,可能需要垂直滚动才能看到
        Exit For
      End If
    Next I
End Sub

Private Sub TreeMy_NodeClick(ByVal Node As Object)
    k = Node.Key  '每点击一次节点,就更新(或记录)选中的节点
    Me.LabNoteText.Caption = "当前工作节点:" & Node.Text
End Sub



西出阳关无故人 发表于:2012-02-05 15:48:51
当然,如果你重新加载的树中,没有之前选中的那个K值,就没法返回。

西出阳关无故人 发表于:2012-02-05 15:51:16
还要防止在没有选中过某节点后就重新加载树的情况,自己想办法吧!

王政 发表于:2012-02-05 17:30:34
非常感谢 西出阳关无故人,问题已经解决。

总记录:4篇  页次:1/1 9 1 :