TreeView控件 如何显示加减号
带有子类的,在哪里设置显示伸缩的加减号,很久都没明白 当有子节点时,然后子节点没有展开的时候加号就自动显示出来,当子节点展开时,就变为减号了Private Sub Form_Load()treeview1.LineStyle =1
Dim Nod As Node
Set nodX = TreeView1.Nodes.Add(, , "r", "Root")
Set nodX = TreeView1.Nodes.Add("r", tvwChild, "child1", "Child")
Set nodX = TreeView1.Nodes.Add("child1", tvwChild, "xx", "Child")
Set nodX = TreeView1.Nodes.Add("r", tvwChild, "child2", "Child2")
TreeView1.LineStyle = tvwRootLines
End Sub
右键设置属性里有"线条样式" treeview1.LineStyle =1
根目录之间也有线条了,但有子项的node还是没有加减号 ..........帮顶 感觉上还有个属性的,一时想不起来了。
明天看看。
默认情况就可以显示线条及加减号的 恩?
treeview1.Style=7
treeview1.LineStyle=0
美羊羊变喜羊羊了? 问题在2点:
1.右键设置属性里有"线条样式"
2.建立的Node对象要有子孩子,如2F的代码
2点都满足,才会看到效果 TreeView 控件
TreeView 控件显示 Node 对象的分层列表,每个 Node 对象均由一个标签和一个可选的位图组成。TreeView 一般用于显示文档标题、索引入口、磁盘上的文件和目录、或能被有效地分层显示的其它种类信息。
语法
Treeview
说明
创建了 TreeView 控件之后,可以通过设置属性与调用方法对各 Node 对象进行操作,这些操作包括添加、删除、对齐和其它操作。可以编程展开与折回 Node 对象来显示或隐藏所有子节点。Collapse、Expand 和 NodeClick 三个事件也提供编程功能。
Node 对象使用 Root、Parent、Child、FirstSibling、Next、Previous 和 LastSibling 属性。在代码中可通过检索对 Node 对象的引用,从而在树上定位。也可以使用键盘定位。UP ARROW 键和 DOWN ARROW 键向下循环穿过所有展开的 Node 对象。从左到右、从上到下地选择 Node 对象。若在树的底部,选择便跳回树的顶部,必要时滚动窗口。RIGHT ARROW 键和 LEFT ARROW 键也穿过所有展开的 Node 对象,但是如果选择了未展开的 Node之后再按 RIGHT ARROW 键,该 Node 便展开;第二次按该键,选择将移向下一个 Node。相反,若扩展的 Node 有焦点,这时再按 LEFT ARROW 键,该 Node 便折回。如果按下 ANSI 字符集 中的键,焦点将跳转至以那个字母开头的最近的 Node。后续的按该键的动作将使选择向下循环,穿过以那个字母开头的所有展开节点。
控件的外观有八种可用的替换样式,它们是文本、位图、直线和 +/- 号的组合,Node 对象可以任一种组合出现。
TreeView 控件使用由 ImageList 属性指定的 ImageList 控件,来存储显示于 Node 对象的位图和图标。任何时刻,TreeView 控件只能使用一个 ImageList。这意味着,当 TreeView 控件的 Style 属性被设置成显示图像的样式时,TreeView 控件中每一项的旁边都有一个同样大小的图像。
发行注意 TreeView 控件是 MSCOMCTL.OCX 文件中的一组 ActiveX 控件的一部分。为了在应用程序中使用 TreeView 控件,必须将 MSCOMCTL.OCX 文件添加到工程中。在发行应用程序时,要在用户的 Microsoft Windows System 或 System32 目录中安装 MSCOMCTL.OCX 文件。
好复杂啊 7楼,我现在的代码正是你写的
改变成 treeview1.LineStyle =1 后,form上的treeview1控件显示了减号,nodes有子类,依然无加减号
对了,用的是vb5,是不是跟这个有关 去下我上传的通讯录 里面的权限分配是用TreeView做的 注释很详细
右键 属性 样式 设置一下样式 在设计视图,右键点选树控件,设置如下两点:
Private Sub Form_Load()
'初始化treeview
TreeView1.HideSelection = True
TreeView1.Indentation = 19 * Screen.TwipsPerPixelX '缩进距离
TreeView1.LabelEdit = tvwManual
TreeView1.LineStyle = tvwRootLines
'---==以下设置节点==---
Dim Node1 As Node, Node2 As Node
Dim dzd_tmp1 As String, dzd_tmp2 As String '大节点
Dim xzd_tmp1 As String '小节点
'填充treeview
For I = 1 To 5
DoEvents
dzd_tmp1 = "xx" & I
Set Node1 = TreeView1.Nodes.Add(, , , dzd_tmp1) '添加大节点
For j = 1 To 5
DoEvents
xzd_tmp1 = "y" & j
Set Node2 = TreeView1.Nodes.Add(Node1.Index, _
tvwChild, , xzd_tmp1) '添加小节点
Next
Node1.Expanded = False
Next
End Sub
一,style选成 2 -tvwPlusMinusText
二:LineStyle选成 1 -tvwRootLines 应该是
Style = tvwTreelinesPlusMinusPictureText '7
LineStyle = tvwRootLines '1 什么时候的帖子? TNND!
帖子一览中提问时间 12-30 16:31,挖坟没商量。
补充:VB , 基础类