1

ExtJS4 アプリケーションにツリー パネルがあり、ノードに使用されるアイコンを変更して、子ノードが含まれていないときに「リーフ」アイコンを使用するようにしたいと考えています。ただし、子ノードが追加されるとすぐに、通常のフォルダー アイコンに戻ります。これを達成するための最良の方法は何ですか?

4

2 に答える 2

1

理解した:

ツリーパネルの初期化時に、すべてのノードには と がallowChildren:trueありleaf:false、ノードには子がありませんiconCls:'tree-leaf'。そのクラスに付随する css ルールは次のとおりです。

.x-reset .tree-leaf,
.x-reset .x-grid-tree-node-expanded .tree-leaf
{
    width: 16px;
    background-image: url('../ext4/resources/themes/images/gray/tree/leaf.gif');
}

次に、空のノードに子ノードが追加されている場合、カスタム iconCls css クラスを次のようにプログラムで削除します。

node.set('iconCls', '');

逆に、子を持つノードが子を失い、空になった場合、カスタム クラスがプログラムによってノードに追加されます。

node.set('iconCls', 'tree-leaf');
于 2011-12-05T15:56:07.217 に答える