更换默认图标后,为什么TreePanel中的节点没有显示加载图标?

时间:2013-01-11 07:24:23

标签: extjs extjs4.1

我替换了TreeStore中树节点的默认图标:

  listeners: {
     append: function( oParentNode, oAppendedNode ) {
        oAppendedNode.set( 'icon', Ext.BLANK_IMAGE_URL );
     }
  }

但现在他们不再显示加载图标了。 有什么简单的方法可以让它回来吗?

1 个答案:

答案 0 :(得分:1)

似乎首先没有设置icon属性,而新的属性会覆盖所有图标(文件夹,文件和加载),所以我构建了2个处理程序,在加载时删除属性并将其添加回来之后。

append: function( oParentNode, oAppendedNode ) {
  oAppendedNode.set( 'icon', Ext.BLANK_IMAGE_URL );

  oAppendedNode.on( 'beforeexpand', function() {
    oAppendedNode.set( 'icon', null );
  } );

  oAppendedNode.on( 'expand', function() {
    oAppendedNode.set( 'icon', Ext.BLANK_IMAGE_URL );
  } );
}