Office中国论坛/Access中国论坛

标题: treeview选中的结点的字体颜色如何设置为绿色? [打印本页]

作者: 简    时间: 2009-9-28 23:43
标题: treeview选中的结点的字体颜色如何设置为绿色?
两个问题:
1。treeview选中的结点的字体颜色如何设置为绿色?、
2。如何禁止修改结点值呢?

[attach]39794[/attach]
作者: kangking    时间: 2009-9-29 09:30
改变结点的颜色等可以通过改变node的forecolor属性和bold属性实现,如:
With Node
    .ForeColor = vbYellow
    .Bold = True
End With
禁止编辑标签可以设置控件的labeledit属性实现,如:
TreeView1.LabelEdit = tvwManual
作者: 简    时间: 2009-9-29 15:20
先谢谢kangking .

但我还想问,如果我要求结点得到焦点时,其字体才变成绿色并加粗,如果没有得到焦点,其字体颜色及是否加粗就恢复缺省状态.

这个结点得到焦点的代码是怎么写的呢,access帮助里没有,不知在哪查找这方面的资料.
作者: wanshan    时间: 2009-9-29 15:25
treeview控件属性里有一项:热点,把这个钩打上后,鼠标移到的节点自动有一个下划线。
作者: 简    时间: 2009-10-10 07:42
先谢谢kangking .

但我还想问,如果我要求结点得到焦点时,其字体才变成绿色并加粗,如果没有得到焦点,其字体颜色及是否加粗就恢复缺省状态.

这个结点得到焦点的代码是怎么写的呢,access帮助里没有,不知在哪查找这 ...
简 发表于 2009-9-29 15:20


wanshan说的方法还是没有实现我想要的效果,得到焦点后节点字体变颜色,这点达到了,问题是失去焦点后恢复常态,这点我就做不出来了,不知道该如何处理得到焦点和失去焦点之间的矛盾,555
作者: kangking    时间: 2009-10-10 11:06
Private Sub TreeView1_NodeClick(ByVal Node As Object)
    Dim nod As Node
    For Each nod In TreeView1.Nodes
        If Node = nod Then
            '改变颜色和粗细
            With Node
                .ForeColor = vbRed
                .Bold = True
                .BackColor = vbGreen

            End With
        Else
            '恢复原颜色和粗细
            With nod
                .ForeColor = vbBlack
                .Bold = False
                .BackColor = vbYellow

            End With
        End If

    Next



End Sub

上面的代码虽不尽人意,可以参考一下。
作者: 简    时间: 2009-10-11 20:31
先谢谢kangking 朋友了。




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3