VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)
首页 - 经验之谈 - 模拟TreeView控件的HoverSelection属性
发表评论(0)作者:不详, 平台:VB6.0+Win98, 阅读:8960, 日期:2003-08-29
    Visual Basic 6的ListView控件支持一个叫HoverSelection的属性。这使得用户能够将他的或者她的鼠标放在ListView上来选择项目,这就让用户在ListView里选择项目变得更容易了。  

你可能需要在TreeView控件里使用同样的属性。虽然TreeView控件里没有HoverSelection属性,但是你可以使用TreeView的MouseMove事件里的一些代码来模拟这个属性。

首先,找到MouseMove事件里的TreeView控件。其次,使用TreeView的HitTest方法来确定鼠标是否放在某个节点上。HitTest方法会检查两个自变量,x和y坐标。根据x和y自变量生成的数据会被传递给MouseMove事件。如果鼠标位于某个节点之上,那么HitTest方法就会返回这个节点。如果有合法的节点被返回,那么Selected属性就被设置为真(True)。

下面是HoverSelection模拟代码的例子:

Private Sub TreeView1_MouseMove(Button As Integer, Shift As Integer, _
        x As Single, y As Single)
    Dim objNode As Node

    TreeView1.SetFocus

    Set objNode = TreeView1.HitTest(x, y)
    If Not objNode Is Nothing Then
        objNode.Selected = True
    End If
End Sub