以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  目录树请教  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=76397)

--  作者:hbhb
--  发布时间:2015/10/28 12:33:00
--  目录树请教
大师:请问,鼠标进入目录树某个节点后,能否动态显示区分,比如变色、或节点标题加粗,加线等?
--  作者:大红袍
--  发布时间:2015/10/28 14:17:00
--  

直接看treenode的属性,对应修改

 

http://www.foxtable.com/help/topics/0895.htm

 


--  作者:hbhb
--  发布时间:2015/10/28 14:24:00
--  
我讲的的经过目录树节点的事件是哪个事件?就像任务栏那样,鼠标经过后,会显示一根横线区分?
--  作者:大红袍
--  发布时间:2015/10/28 14:38:00
--  

mouseMove事件

 

Dim p As new point(e.X, e.Y)
Dim btrv = e.sender.basecontrol
Dim nd = btrv.GetNodeAt(p)
If nd IsNot Nothing Then
    For Each d As WinForm.TreeNode In e.Sender.AllNodes
        If d.name = nd.name
            d.backcolor = color.red
        Else
            d.backcolor = color.white
        End If
    Next
End If


--  作者:hbhb
--  发布时间:2015/10/28 14:49:00
--  
谢谢!看来真是学海无涯呀,帮助中怎么找不到?如此重要的应用帮助中为何不举例?
--  作者:hbhb
--  发布时间:2015/10/28 15:08:00
--  
请问如何鼠标移动时减少目录树的闪烁?
--  作者:大红袍
--  发布时间:2015/10/28 15:18:00
--  
static pnd = e.sender.SelectedNode
Dim p As new point(e.X, e.Y)
Dim btrv = e.sender.basecontrol
Dim nd = btrv.GetNodeAt(p)
If nd IsNot Nothing AndAlso pnd.tostring <> nd.tostring Then
    If pnd IsNot Nothing Then pnd.backcolor = color.white
    nd.backcolor = color.red
    pnd = nd
End If

--  作者:hbhb
--  发布时间:2015/10/28 15:53:00
--  
谢谢!还是mouseMove事件?怎么一移动到目录树就报错?
--  作者:大红袍
--  发布时间:2015/10/28 15:55:00
--  
static pnd = Nothing
Dim p As new point(e.X, e.Y)
Dim btrv = e.sender.basecontrol
Dim nd = btrv.GetNodeAt(p)
If nd IsNot Nothing AndAlso (pnd is nothing OrElse pnd.tostring <> nd.tostring) Then
    If pnd IsNot Nothing Then pnd.backcolor = color.white
    nd.backcolor = color.red
    pnd = nd
End If

--  作者:hbhb
--  发布时间:2015/10/28 16:01:00
--  
测试了一下,比第一个目录树闪动的更厉害?