flex的tree动态加载大量数据与滚动条相关问题探讨

   2015-06-26 0
核心提示:本文将对flex的tree动态加载大量数据与滚动条相关的问题进行探讨,感兴趣的朋友可以参考下哈,希望对你有所帮助
用arraycollection做数据源的坑啊,网上几乎没啥例子,全靠自己摸索

其实显示上万条数据用滚动条本来就是个垃圾设计,没办法,lvl太低,做不了主。

case 1:

官方有句话:使用ItemRenderer的大数据控件,其在渲染时,并不会一次创建所有数据列/行的显示对象 (ItemRenderer),它仅会创建在屏幕上可见的数据列/行,并且重复利用这些显示对象,以提交运行时效率。

所以拖动滚动条时候很容易出现花屏 或者 空白。

原因是Tree中的也是用的itemRender产生延迟造成的.

解决方法: 在Tree的scroll调用myTree.invalidateList()方法,刷新树.

case 2:

自动获取树数据超过显示范围时没有自动生成滚动条.

解决方法:获得数据后分发事件.
复制代码 代码如下:

arrayCollection.itemUpdated(item);
arrayCollection.dispatchEvent(new CollectionEvent(CollectionEvent.COLLECTION_CHANGE, false, false, CollectionEventKind.ADD, -1, -1, [item]));
 
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • Angular2+typescript+webpack2(支持aot, tree s
    Angular2官方推荐的应该是使用systemjs加载, 但是当我使用到它的tree shaking的时候,发现如果使用systemjs+rollup,只能打包成一个文件,然后lazy loading就没法搞了。因此我使用了webpack2,webpack2自带tree shaking,只要将tsconfig中的module设置成es201
    02-09
  • delphi TreeComboBox 解决树的单击事件和小三角
      for i := 0 to cbb_controlmattype.Items.Count -1 do  begin     if cbb_controlmattype.Items[i].Selected = True then     begin        if cbb_controlmattype.Items[i].Expanded = False then            cbb_controlmatt
    02-09
  • Delphi中ListView和TreeView的Item中的内存泄露
    Delphi中大家在使用 ListView和TreeView时,一般都会使用到Item的Data属性来保存大家自己的内部数据,这个Data的声明如下:property Data: Pointer;大家可以看到它就是一个指针,使用上一般类似如下代码(以ListView为)添加时  PViewItemState = ^TViewItem
    02-09
  • delphi中Treeview的使用介绍
    今天重点学习了TreeView的使用方法,基本的已经写了,现在主要想说的是如何显示数据库的资料,今天只是做了个较简单的例子,一个父节点下显示数据库中某个field的值。代码如下:procedure TMainForm.TreeviewShow(Sender: TObject);varnode1,subnode1: TTreeN
    02-09
  • Delphi树形控件(TreeView)节点间的拖动 delphi
    http://hi.baidu.com/ningj123/blog/item/040b36af4e9554f2fbed50c9.html/cmtid/892d2ea7be915298d14358dd Delphi树形控件(TreeView)节点间的拖动  很久没写博客了,因为实在没什么东西可写。不过,今天以前的同事问我,关于TreeView的操作,那我就顺便写
    02-09
  • TreeView 不刷新获得节点值的方法 --- asp.net
    http://hi.baidu.com/haoyongsheng/blog/item/73155795d309e90e7bf480e9.html网上找了半天,好像有人提到过这个东西,可是自己实现起来,却不是那么容易,做法也很简单,就是js完成选择工作:script type="text/javascript"function myalert(a){alert(a);docu
    02-09
  • 【万字长文】使用 LSM-Tree 思想基于.Net 6.0 C# 实现 KV 数据库(案例版)
    【万字长文】使用 LSM-Tree 思想基于.Net 6.0 C
    任何事情的开始都是艰难的,跨越时间的长河,一步一步的学习,才有了今天它的诞生,会了就是会了,那么,应对下一个相关问题就会容易许多,我对这样的壁垒称之为,知识的屏障。文章有点长,耐心看完应该可以懂实际原理到底是啥子。这是一个KV数据库的C#实现,
    02-09
  • C# winfrom动态加载TreeView控件
           如果需要给TreeNode绑定自己想要的属性解决办法?       自定义TreeNode 继承自.net的TreeNode后 添加属性如:       public class CustomTrNode : TreeNode      {        /// summary        /// 属性1:控件
    02-09
  • Delphi 双击TTreeView节点时禁止展开和关闭
     在DELPHI里如何来 禁止双击TTreeView节点时,避免让TTreeView自动地去执行Windows默认的展开或关闭节点的事件.而又能让点击TTreeview 节点前面的展开符时有用,即点展开符时能关闭或展开节点,其实我们只要判断双击事件的位置就行了,那就是我们只要知道是否是
    02-09
  • asp.net 第三方UI控件 Telerik KendoUI 之 Tree
    一、前台显示  备注:一次性取出所有节点function loadTreeData() {$.ajax({type: 'POST',url: '@(Html.UrlHref("ScriptSite", "/FilesManager/MyFiles/GetFolderTree"))',data: {},success: function (result) {if (result) {inlineDefault = new ken
    02-08
点击排行