为TreeView控件的Node对象写双击事件代码 -林
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> 源码示例


为TreeView控件的Node对象写双击事件代码

发表时间:2021/12/23 17:32:34 评论(0) 浏览(3951)  评论 | 加入收藏 | 复制
   
摘 要:为TreeView控件的Node对象写双击事件代码。
正 文:

      以下是我使用TreeView控件一点心得,以此抛砖引玉,希望其它不会的程序员能受到启发,也希望我能从您们当中学到点东西!

      大家应该对TreeView控件都不陌生!相信大家都知道,此控件没有节点双击事件,只有节点单击事件(NodeClick)和节点复选事件(NodeCheck)!
      但我们在很多情况下都想实现节点双击的功能,要求当用户双击到节点上才引发,而双击控件上其它非节点的位置时不引发,同样地,还有鼠标右键菜单,当用鼠标右键点击节点才弹出此菜单,未点击到节点时不要弹出此菜单!
      可能已经有许多人已经用其它方法实现了此功能,但我还是要向大家介绍一下我实现此功能的方法,条条道路通罗马,以供大家参考。


当用户点击一个节点时,节点和控件的事件顺序如下(其它事件与此无关,就不用列出了,下同):
NodeClick()
TreeView_Click()


当用户双击一个节点时
NodeClick()
TreeView_Click()
TreeView_DbClick()


当用户鼠标右键点击一个节点时
NodeClick()
TreeView_MouseUp()
TreeView_Click()


由以上有顺序我们就可以写出相应的控制代码实现了

Private mNodeClick As Integer '记录节点是否被单击了

'在节点单击事件里添加以下代码
Private Sub trvNode_NodeClick(ByVal Node As MSComctlLib.Node)
    mNodeClick = 2 '节点被点击,单击一个节点会先发生节点单击事件,再发生控件单击事件
    ...
End Sub

'在控件单击事件中添加如下代码
Private Sub trvNode_Click()
    mNodeClick = mNodeClick - 1 '控件被点击,记一次数,如果标志为1代表节点被单击,否则节点未被点击
End Sub

'在控件双击事件中添加以下代码
Private Sub trvNode_DblClick()
    If mNodeClick = 1 Then '如果节点被点击后只发生了一次控件被点击的事件,则说明用户双击了节点,否则用户双击了控件的非节点位置
        mNodeClick = 0 '重新开始
        '写节点双击事件代码
    End If
End Sub

以上代码就实现了节点双击事件的控制。


'节点右键菜单
Private Sub trvNode_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button = vbRightButton Then
        If mNodeClick = 2 Then '鼠标右键点击了节点,节点被点击后,没有发生控件点击事件
   '此时就可以弹出节点的右键菜单了
            PopupMenu menuRight, , , , menuRDesign
        End If
    End If
End Sub

以上代码就实现了节点右键菜单的功能。


例子也是在别人的例子基础上上改的,欢迎大家学习。


示   例:

点击下载此附件


Access软件网交流QQ群(群号:198465573)
 
 相关文章
[示例]数据列表窗体内的双击事件  【jingyu  2008/11/29】
【Access双击示例】Access双击记录弹出窗体数据\Acce...  【Accessoft整理  2010/5/4】
【access源码示例】TreeView控件节点的双击事件捕获  【红尘如烟  2012/6/16】
[Access]三小时掌握TREEVIEW控件常见问题  【杨雪  2015/7/21】
【Access树控件知识】Access的treeview控件为啥没...  【麥田  2017/3/31】
Treeview控件实例  【柳州小林  2020/9/17】
【Access转载】分享国外无须安装/注册,兼容32位和64位的T...  【金宇  2021/5/11】
常见问答
技术分类
相关资源
文章搜索
关于作者


文章分类

文章存档

友情链接