3 votes

Comment ajouter des cases à cocher à Ext.tree.TreePanel ?

J'ai créé ce simple arbre :

var children = [{
         text:'My Layers',
         children:[
           new Ext.tree.TreeNode({text:'test1',leaf:true}),
           new Ext.tree.TreeNode({text:'test2',leaf:true})
        ]
    }];
    var tree = new Ext.tree.TreePanel({
       loader:new Ext.tree.TreeLoader(),
       width:150,
       title:'Layers',
       height:250,
       collapsible:true,
       rootVisible:false,
       root: new Ext.tree.AsyncTreeNode({
           expanded:true,
           leaf:false,
           text:'Tree Root',
           children:children
       })
    });

Comment puis-je ajouter une case à cocher à chaque nœud ?

En fait, je vais passer la liste comme paramètre à la fonction dans un tableau JSON (par exemple ["test1", "test2"]). Quelle est la bonne façon de charger des nœuds à partir de données JSON ?

J'utilise ExtJs 2.3 avec GeoExt.

A la vôtre !

4voto

XtremlyGeeky Points 181

http://dev.sencha.com/deploy/dev/examples/tree/check-tree.html

La bibliothèque EXTJS en propose un exemple.

3voto

Shashwat Points 691

Vous pouvez définir vérifié : vrai/faux au niveau du nœud pour faire apparaître la case à cocher. Initialement, elle est définie sur null .

var children = [{
     text:'My Layers',
     children:[
       new Ext.tree.TreeNode({text:'test1',leaf:true, **checked: true**}),
       new Ext.tree.TreeNode({text:'test2',leaf:true, **checked: false**})
    ]
}];

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X