TreeView控件
好的,我';我已经开始对VBA控件进行编目,以替代ObjectDCL——你们看,我们lispers最终必须来到这里,谦恭地手里拿着帽子,寻求帮助 ;我知道你的第一反应赢了;当然,这是不恰当的,但任何帮助都将不胜感激 有人在VBA中使用过treeview控件吗 ;本人';我发现以下语法错误:
Dim layerfilters As AcadDictionary
Set layerfilters = ThisDrawing.Layers.GetExtensionDictionary.Item("ACAD_LAYERFILTERS")
For Each entry In layerfilters
TreeView1.Nodes.Add(new treenode, entry.name, entry.name, , ,)
Next
VB帮助使用不同的语法:
treeView1.Nodes。添加(新TreeNode(customer2.CustomerName))
但VBA动态帮助显示用逗号分隔的arg ;有什么见解吗
谢谢
试着去掉括号,这不是';t lispDim layerfilters As AcadDictionary
Set layerfilters = ThisDrawing.Layers.GetExtensionDictionary.Item("ACAD_LAYERFILTERS")
For Each entry In layerfilters
TreeView1.Nodes.Add new treenode, entry.name, entry.name, , ,
Next
I haven#039;很长一段时间没有看树,也没有#039;看这个,我注意到了 ;括号的规则是,即使intellisense显示它们,在等号的右边,是,否则是,否。因此它将是
设置SomeThing=TreeView1.Nodes。添加(新treenode、entry.name、entry.name、,)
或TreeView1.Nodes。添加新树节点,条目。名称,条目。名称,,
不是.TreeView1.Nodes。添加(新treenode,entry.name,entry.name,,)
hi-tee hoe 谢谢鲍勃-进一步挖掘,我抓住了,但它#039;仍不工作:
Dim layerfilters As AcadDictionary
Set layerfilters = ThisDrawing.Layers.GetExtensionDictionary.Item("ACAD_LAYERFILTERS")
Set nod0 = TreeView1.Nodes.Add(,,"root","All Layers",,)
For Each entry In layerfilters
Set nodekey = entry.Name
Set nodetext = entry.Name
TreeView1.Nodes.Add ,,nodekey,nodetext,,
Next
试试这个…
还有,你想用什么版本的TreeView控件
Dim layerfilters As AcadDictionary
On Error GoTo NoFilters
Set layerfilters = ThisDrawing.layers.GetExtensionDictionary.Item("ACAD_LAYERFILTERS")
NoFilters:
If layerfilters Is Nothing = False Then
With TreeView1
For Each Entry In layerfilters
.Nodes.Add , , Entry.Name, Entry.Name
Next
End With
End If
基思-成功了!谢谢
这将帮助我完成树视图:接下来,我想将适当的层作为子层放在过滤器节点下 ;本人';我会让每个人都保持最新
再次感谢Keith和Bob-这个论坛很棒 
祝你周末愉快! It#039;只有被问到的问题才行
或者什么的
页:
[1]