访问vba treeview(类MSComctlLib.TreeCtrl.2)如何在单击鼠标右键后选择节点

时间:2012-02-21 08:50:20

标签: ms-access vba treeview

当发生鼠标右键单击事件时,有没有办法在MSComctlLib.TreeCtrl.2类树视图中点击该节点?
可用的方法包括 TV_nodeClick(ByVal节点为对象),它明确地提供点击的节点, TV_MouseDown(ByVal按钮为整数,ByVal Shift为整数,ByVal x为长,ByVal为长)显然不提供节点,只提供坐标 那么我怎样才能右键点击节点?

1 个答案:

答案 0 :(得分:3)

自己找到它!我检查了方法列表,发现了一个有趣的方法:hitTest。这将x,y转换为节点;当然,必须添加一个检查以确定节点已被确定 示例代码:

Private Sub TV_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal x As Long, ByVal y As Long)
    If Button = acRightButton And Not (Me.TV.HitTest(x, y) Is Nothing) Then
        MsgBox (Me.TV.HitTest(x, y).Key)
    End If
End Sub