JTree Applet probleme

fredspv Messages postés 127 Date d'inscription dimanche 7 mars 2004 Statut Membre Dernière intervention 6 juin 2008 - 4 juin 2005 à 22:32
fredspv Messages postés 127 Date d'inscription dimanche 7 mars 2004 Statut Membre Dernière intervention 6 juin 2008 - 6 juin 2005 à 18:13
Bonjour,
Je teste actuellement un JTree dans un Applet hors mon JTree ne s'affiche pas entierement pourquoi ?

Voici le code:

import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import javax.swing.*;
import javax.swing.tree.*;


public class index extends Applet {



//Construire l'applet
public index() {


}
//Initialiser l'applet
public void init() {
try {
JLabel jLabel1 = new JLabel("Ceci est un test");
JPanel jpPanel1 = new JPanel();
jpPanel1.setLayout(new GridLayout(1,2));
jpPanel1.setSize(200,200);


DefaultMutableTreeNode Infos = new DefaultMutableTreeNode("Informations");
DefaultMutableTreeNode Adh = new DefaultMutableTreeNode("Adh");
Infos.add(Adh);
DefaultMutableTreeNode Carte = new DefaultMutableTreeNode("Carte(s)");
Adh.add(Carte);
DefaultMutableTreeNode Rib = new DefaultMutableTreeNode("Rib(s)");
Adh.add(Rib);
DefaultMutableTreeNode Papier = new DefaultMutableTreeNode("Papier(s)");
Adh.add(Papier);


DefaultMutableTreeNode Divers = new DefaultMutableTreeNode("Divers");
Infos.add(Divers);
DefaultMutableTreeNode Npai = new DefaultMutableTreeNode("Npai");
Divers.add(Npai);


JTree arbre = new JTree(Infos);


arbre.setSize(300,300);
arbre.setShowsRootHandles(true);


jpPanel1.add(arbre);
jpPanel1.add(jLabel1);
jpPanel1.setBackground(Color.blue);


this.add(jpPanel1);
this.setSize(500,500);


}
catch(Exception e) {
e.printStackTrace();
}
}
//Démarrer l'applet
public void start() {
}
//Arrêter l'applet
public void stop() {
}
//Détruire l'applet
public void destroy() {
}


}

fred

12 réponses

bloofi Messages postés 388 Date d'inscription mercredi 1 octobre 2003 Statut Membre Dernière intervention 3 mai 2006 2
5 juin 2005 à 12:38
par defaut l'arbre ne s'affiche pas déroulé, si tu veux que tous tes
items et sous-items soient déroulé tu boucles dessus et tu fait un
setExpandPath (me rapelle pu exactement de la signature)
0
bloofi Messages postés 388 Date d'inscription mercredi 1 octobre 2003 Statut Membre Dernière intervention 3 mai 2006 2
5 juin 2005 à 12:58
public void deroulerArbre(boolean selectFirst) {

int cpt = 0;

while(this.getPathForRow(cpt) != null)

{

this.expandPath(this.getPathForRow(cpt));

cpt++;

}

this.revalidate();

}



a quelques choses pret (la classe ou j'exécute cette fonction etend de JTree)
0
bloofi Messages postés 388 Date d'inscription mercredi 1 octobre 2003 Statut Membre Dernière intervention 3 mai 2006 2
5 juin 2005 à 13:05
Woups erreur de copier coller : oublie le parametre boolean 'boolean selectFirst' :)
0
fredspv Messages postés 127 Date d'inscription dimanche 7 mars 2004 Statut Membre Dernière intervention 6 juin 2008
5 juin 2005 à 13:21
Bonjour,

Le probleme c'est que le JTree quand j'ouvre un noeud des parties ne sont pas visibles c'est à dire que le JTree se deploit mais sont cachées. C'est comme si j'agrandissais une image et que l'image aggrandie n'etait visible qu'à 80%.

fred
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fredspv Messages postés 127 Date d'inscription dimanche 7 mars 2004 Statut Membre Dernière intervention 6 juin 2008
5 juin 2005 à 14:08
fred
0
fredspv Messages postés 127 Date d'inscription dimanche 7 mars 2004 Statut Membre Dernière intervention 6 juin 2008
5 juin 2005 à 14:09
fred
0
bloofi Messages postés 388 Date d'inscription mercredi 1 octobre 2003 Statut Membre Dernière intervention 3 mai 2006 2
5 juin 2005 à 16:18
Essaye de mettre ton tree dans un JScrollPane :

plutot que de faire :

conteneur.add( leTree );



fait :

conteneur.add( new JScrollPane( leTree ,


JScrollPane.VERTICAL_BAR_AS_NEEDED,


JScrollPane.HORIZONTAL_BAR_AS_NEEDED));

comme ca si il est trop grand , y'aura des scrollbars !
0
fredspv Messages postés 127 Date d'inscription dimanche 7 mars 2004 Statut Membre Dernière intervention 6 juin 2008
6 juin 2005 à 14:02
Lorsque j'abaisse mon applet dans la barre des taches et que je l'ouvre
de nouveau, le JTree s'agrandit automatiquement et tous les noeuds sont
visibles.

fred
0
bloofi Messages postés 388 Date d'inscription mercredi 1 octobre 2003 Statut Membre Dernière intervention 3 mai 2006 2
6 juin 2005 à 14:04
?!!!

un probleme de repaint sans doute...
0
fredspv Messages postés 127 Date d'inscription dimanche 7 mars 2004 Statut Membre Dernière intervention 6 juin 2008
6 juin 2005 à 15:51
Dans mon code où dois je donc utilisez le repaint ?

fred
0
bloofi Messages postés 388 Date d'inscription mercredi 1 octobre 2003 Statut Membre Dernière intervention 3 mai 2006 2
6 juin 2005 à 16:22
Ben a tout moment ou tu rajoutedes noeuds, tu peux reloader l'arbre,
des revalidate(), des repaint()...une fois ke t'en a mis partout tu
vire un par un en testant ceux qui servent a rien !
0
fredspv Messages postés 127 Date d'inscription dimanche 7 mars 2004 Statut Membre Dernière intervention 6 juin 2008
6 juin 2005 à 18:13
Tout compte fais ça doit venir de Java car maintenant ça marche sans avoir changer mon code.

Bizarre

fred
0
Rejoignez-nous