Bonjour,
Encore un petit soucis. Comment faire un treeview avec des données en local ? Bizarrement, j'ai du mal à trouver de la doc à ce sujet...
Merci.
Mako
Version imprimable
Bonjour,
Encore un petit soucis. Comment faire un treeview avec des données en local ? Bizarrement, j'ai du mal à trouver de la doc à ce sujet...
Merci.
Mako
ton tree est fixe ?
Par fixe, tu entends quoi ? Il n'y a pas besoin de "Drag and Drop", et je sais par avance ce qu'il y aura comme arborescence (c'est pour un menu).
Mako
En fait avec extjs, tu peux modifier ton arbre de 50 000 facons ...DD, editeur, filter, loader ...
Si les éléments ne changent pas au cours de l'utilisations ... on peut simplifier le pb ...
inspire toi de ce code ...
dans monURL.php, tu fais un simple echoCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14 var monArbre = new Ext.tree.TreePanel({ id:'tree', border:false, rootVisible:false, useArrows: true, autoScroll: true, animate: true, containerScroll:true, frame:false, padding:20, height:520, dataUrl: 'monURL.php', root: {nodeType: 'async'} });
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14 echo "[{ id: 1, text: 'A leaf Node', leaf: true },{ id: 2, text: 'A folder Node', children: [{ id: 3, text: 'A child Node', leaf: true }] }]";
C'est bon, j'ai réussi à m'en sortir, mais sans vraiment utiliser ton code, désolé. En fait, quand je parlais de local, je voulais dire dans le même fichier. Ainsi, mon arbre est défini grosso modo comme ceci :
Merci tout de même de l'aide.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 var monArbre = new Ext.TreePanel({ useArrows: true, autoScroll: true, containerScroll: true, animate: true, loader: new Ext.tree.TreeLoader({ preloadChildren: true }), rootVisible: false, root: new Ext.tree.AsyncTreeNode({ text: 'racine', expanded: true, children: [{ text: 'feuille 1', leaf: true },{ // Je définis tout mon arbre ainsi, directement }] }) });
Mako
tu devrais séparer ton AsyncTreeNode du treePanel, pour des raisons de maintenabilité.
Effectivement, ce serait mieux.Citation:
tu devrais séparer ton AsyncTreeNode du treePanel, pour des raisons de maintenabilité.
Toutefois, comme tu me l'avais fait remarqué une fois dans un autre post, il est assez fréquent qu'il y est des soucis avec Ext JS lorsque tu créés tout tes composants à part, et que tu rassembles le tout à la fin (déjà eu des problèmes avec des panels pour des menu accordéons, et aussi pour le treeview il me semble).
Mais merci du conseil.
Mako