zoukankan      html  css  js  c++  java
  • TreeView控件

    快速调入TreeView控件以及ListView控件的子项内容
     
    有一个简单但仍未发现的技巧可用于在TreeView控件中装载多个节点,或者在ListView控件中装载多个ListItems。这种方法要比传统做法快。先看看下面这个传统方法:
    For i = 1 To 5000

    TreeView1.Nodes.Add , , , "Node " & i

    Next

    改进一下,代替重复引用TreeView1对象的Nodes集合,我们可以先将之保存在临时对象变量中:

    Dim nods As MSComctlLib.Nodes

    Set nods = TreeView1.Nodes

    For i = 1 To 5000

    nods.Add , , , "Node " & i

    Next

    甚至,如果使用With代码块,还可以不需要临时变量:

    With TreeView1.Nodes

    For i = 1 To 5000

    .Add , , , "Node " & i

    Next

    End With

    经测试,优化的循环代码要比传统方法执行速度快40%左右。原因在于:将Nodes集合对象保存在临时变量中,或者应用With代码块后VB将使用隐藏的临时变量后,就可以避免在循环中重复绑定Nodes对象到它的父TreeView1对象上。由于这种绑定是低效率的,因此省却它就能节省大量的执行时间。

    同样的道理对于其他ActiveX控件也生效:

    ListView控件的ListItems、ListSubItems以及ColumnHeaders集合
    Toolbar控件的Buttons和ButtonMenus集合
    ImageList的ListImages集合
    StatusBar控件的Panels集合
    TabStrip控件的Tabs集合
     

  • 相关阅读:
    linux基本命令之grep
    Linux在线练习网站
    MySql分表分库思路
    SqlServer触发器
    SqlServer存储过程
    Spring常用注解总结
    SpringMVC的HelloWorld
    XML基础和Web基本概念(JavaWeb片段一)
    红黑树-结点的删除(C语言实现)
    红黑树-结点的插入
  • 原文地址:https://www.cnblogs.com/kentyshang/p/411801.html
Copyright © 2011-2022 走看看