Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# Image +/- d'un tree invisible et inactive

Envoyé par : manu_gestelia

Date : 23/05/2006 12:22

Bonjour, J'utilise un arbre. Par du code JS, j'ajoute des éléments dans cet arbre. Les éléments ajoutés dans l'arbre peuvent avoir n niveaux. L'ajout se fait bien, mais au final je me retrouve avec un arbre sans +/- devant chaque noeud, donc impossibilité de déplier le sous niveau. Ci-joint un résumé de mon code : Merci d'avance pour votre aide.

<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml-stylesheet href="chrome://global/skin" type="text/css"?>
<!-- fichier : test.xul -->
<window  xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script>
function AjoutUn(aName) {
var lObjTreeItem = document.createElement('treeitem');
lObjTreeItem.setAttribute('container',"true");
lObjTreeItem.setAttribute('open',"true");
var lObjTreeRow = document.createElement('treerow');
var lObjTreeCell = document.createElement('treecell');
lObjTreeCell.setAttribute('label', aName);			
lObjTreeRow.appendChild(lObjTreeCell);
lObjTreeRow.appendChild(lObjTreeCell);
       lObjTreeItem.appendChild(lObjTreeRow);	
return lObjTreeItem;
}
function Ajout(){
var lTreeChildreen = document.getElementById('Arbre');
var lObjTreeItem = AjoutUn("Principal")			
lTreeChildreen.appendChild(lObjTreeItem);
var lIdNoeud = Array("Niveau 1", "niveau 2")
for(var lCtLig = 0; lIdNoeud.length > lCtLig ; lCtLig++)
{
        lObjSSTreeChildreen = document.createElement('treechildreen');
	lObjTreeItem.appendChild(lObjSSTreeChildreen);
	lObjTreeItem = AjoutUn(lIdNoeud[lCtLig])	;		
	lObjSSTreeChildreen.appendChild(lObjTreeItem);
}
lObjSSTreeChildreen = document.createElement('treechildreen');
lObjTreeItem.appendChild(lObjSSTreeChildreen);
lObjTreeItem = AjoutUn("Feuille");		
lObjSSTreeChildreen.appendChild(lObjTreeItem);
}
</script>
<groupbox flex="1">
   <button label="Test" onclick="Ajout();" />
   <tree id="tree" flex="1" hidecolumnpicker="true">
     <treecols>
	<treecol id="tree-name"   flex="1" label="Titre" primary="true"/>
     </treecols>
     <treechildren  id="Arbre">
     </treechildren>
     </tree>
  </groupbox>
</window>

# Re: Image +/- d'un tree invisible et inactive

Envoyé par : laurentj

Date : 23/05/2006 13:34

Tu crée tes éléments sans indiquer de namespace. Résultat : ce ne sont pas des éléments XUL... Il faut que tu utilises createElementNS.

# [Resolu]: Image +/- d'un tree invisible et inactive

Envoyé par : manu_gestelia

Date : 23/05/2006 15:28

Il faut que je me mette dans la tête que treechildren s'écrit avec UN seul e : lObjSSTreeChildreen = document.createElement('treechildren') au lieu de lObjSSTreeChildreen = document.createElement('treechildreen')

Désolé !

Il n'est plus possible de poster des messages dans ce forum.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.