Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2752 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  JTree

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

JTree

n°1362666
denebj
Posté le 09-05-2006 à 17:59:56  profilanswer
 

Bonjour,
Voila j'ai creé une arborescence en java avec un JTree( defaultmodeltree)
Mais voila j'aimerais mettre des boutons ou des textfields aprés le texte d'un fils. Par exemple :
titi (noeud)
--tutu : [textfield] (fils de titi)
--toto : [textfield]
--tata
 
tutu et toto sont des fils de titi :-)
Voila si vous pouviez me donner un coup de main :-)
J'ai essayé à la brutal, je defini mon bouton, et quand je creer un new defaultmodeltree je l'inclu la, mais il m'affiche du texte à la place du bouton :S
 
Merci ^^

mood
Publicité
Posté le 09-05-2006 à 17:59:56  profilanswer
 

n°1362674
kadreg
profil: Utilisateur
Posté le 09-05-2006 à 18:03:22  profilanswer
 

TreeCellRenderer :o


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
n°1362684
denebj
Posté le 09-05-2006 à 18:16:23  profilanswer
 

Oui mais non :p j'utilise deja pour modifier mes fonts etc... mais en aucun cas je n'ai trouvé le moyen de faire ce ke je veux (bon chui pas un pro donc y a surement moyen  :D  :D ), j'ai essayé avec, sa fait 2 jours que je suis dessus, et je commence a devenir fou  :fou:  :fou:  Chui sur que c'est tout simple mais jtrouve pas le truc  :sweat:  :sweat:


Message édité par denebj le 09-05-2006 à 18:19:01
n°1362708
kadreg
profil: Utilisateur
Posté le 09-05-2006 à 18:40:26  profilanswer
 

oui, mais cellRenderer par defaut hérite de JLabel. A toi de définit ton proprre CellRenderer héritant d'un autre JComponent, ou délégant en interne à un JTextField ou autre :o
 
Exemple :  
http://www.java2s.com/Code/Java/Sw [...] xample.htm


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
n°1362711
denebj
Posté le 09-05-2006 à 18:48:14  profilanswer
 

T as pas d'autre exemple ? :D :D paske je vois le principe, aprés pour le coder c'est autre chose pour moi :o :o

n°1362713
kadreg
profil: Utilisateur
Posté le 09-05-2006 à 18:51:43  profilanswer
 

Code :
  1. class CheckRenderer extends JPanel implements TreeCellRenderer {
  2.   protected JCheckBox check;
  3.   protected TreeLabel label;
  4.   public CheckRenderer() {
  5.     setLayout(null);
  6.     add(check = new JCheckBox());
  7.     add(label = new TreeLabel());
  8.     check.setBackground(UIManager.getColor("Tree.textBackground" ));
  9.     label.setForeground(UIManager.getColor("Tree.textForeground" ));
  10.   }
  11.   public Component getTreeCellRendererComponent(JTree tree, Object value,
  12.       boolean isSelected, boolean expanded, boolean leaf, int row,
  13.       boolean hasFocus) {
  14.     String stringValue = tree.convertValueToText(value, isSelected,
  15.         expanded, leaf, row, hasFocus);
  16.     setEnabled(tree.isEnabled());
  17.     check.setSelected(((CheckNode) value).isSelected());
  18.     label.setFont(tree.getFont());
  19.     label.setText(stringValue);
  20.     label.setSelected(isSelected);
  21.     label.setFocus(hasFocus);
  22.     if (leaf) {
  23.       label.setIcon(UIManager.getIcon("Tree.leafIcon" ));
  24.     } else if (expanded) {
  25.       label.setIcon(UIManager.getIcon("Tree.openIcon" ));
  26.     } else {
  27.       label.setIcon(UIManager.getIcon("Tree.closedIcon" ));
  28.     }
  29.     return this;
  30.   }


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
n°1362733
denebj
Posté le 09-05-2006 à 19:33:54  profilanswer
 

ok, jvais essayé de voir sa a mon taff demain ^^ j'espere que je vais y arriver :fou:  :fou:  
Merci ^^

n°1362899
nraynaud
lol
Posté le 09-05-2006 à 23:24:31  profilanswer
 

kad > tu es prié de pas sous-classer JPanel, merci :o

n°1362901
kadreg
profil: Utilisateur
Posté le 09-05-2006 à 23:27:22  profilanswer
 

spamafote, c'est l'exemple, j'ai bien précisé dans mon commentaire par délégation :o


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
n°1362904
kadreg
profil: Utilisateur
Posté le 09-05-2006 à 23:30:38  profilanswer
 

Et puis le DefaultTreeCellRenderer hérite de JLabel :kaola:


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
mood
Publicité
Posté le 09-05-2006 à 23:30:38  profilanswer
 

n°1363757
denebj
Posté le 10-05-2006 à 19:45:18  profilanswer
 

mdr :p alors j'ai reussi a faire marcher le truc, en faisant un JPanel, mais mon trecellrenderer herite de JTextArea chez moi ^^
Par contre mes fils son constitué d'une phrase et d'une case à cocher, mais c'est tout le fils ui est editable, pas seulement la box, (les 2 sont dans un panel), vous aurize une idée commebt specifié que c'est QUE la box qui est editable ?

n°1363787
kadreg
profil: Utilisateur
Posté le 10-05-2006 à 20:28:52  profilanswer
 

denebj a écrit :

en faisant un JPanel, mais mon trecellrenderer herite de JTextArea chez moi ^^


 
[:totoz]


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
n°1363793
denebj
Posté le 10-05-2006 à 20:40:21  profilanswer
 

koi k'eski y a :p Chui un peu bourrin niveau code mais bon :p fo pas avoir peur :D :D

n°1363794
nraynaud
lol
Posté le 10-05-2006 à 20:40:22  profilanswer
 

moi je vais faire hériter mon listRenderer de ApplicationMainFrame puisque c'est ça :o


---------------
trainoo.com, c'est fini
n°1363800
denebj
Posté le 10-05-2006 à 20:50:04  profilanswer
 

Hé oh on se moque pas :o :o En plus c'est pas ma faute si j'aime pas le java :o :o

n°1364473
denebj
Posté le 11-05-2006 à 17:20:31  profilanswer
 

Bon alors, maitenant j'ai reussi a mettre ma zone de texte (texfield, et un bouton a coté, avec du texte), tout ceci sur des fils.
Ces fils sont editables pour pouvoir ecrire dans le textfield, maintenant j'aimerais recuperer ce texte avec un evenement sur le bouton (tu clique => sa recupere le texte).
J'ai donc essayé de mettre un evenement sur l'arbre (de type JTree.addcomponentlistener) avec la souris (quand l'utilisateur clique). Mais le probléme c'est que mes boutons sont dans des panels, et je n'arrive pas à avoir l'evenement sur le bouton !!!!
Par exemple si je fais un getsource() , j'ai le droit a java.swing.jpanel[...] (il s'agit de ce que je recupere quand je clique sur mon fils ou il y a le bouton).

n°1366711
denebj
Posté le 15-05-2006 à 17:23:31  profilanswer
 

Bon j'ai finalement trouvé ^^
Je souhaiterais savoir comment securisé mon JTextField, c'est à dire que j'aimerais que l'utilisateur ne puisse entrer que des chiffres, est-ce possible ?

n°1366713
nraynaud
lol
Posté le 15-05-2006 à 17:24:44  profilanswer
 

http://java.sun.com/docs/books/tut [...] field.html


---------------
trainoo.com, c'est fini

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  JTree

 

Sujets relatifs
jtree automatiqueAjout/suppression d'éléments dans un JTree...
action sur un jtreeJtree et DefaultMutableTreeNode
[JAVA] Changer le node dans un JTree ?Selectionner les noeud d'un JTree avec les touches du clavier
[JAVA] Empecher le doubl-click sur un JTreeXMLEncoder et JTree - constructeur avec paramètre -
[java] JTree : noeud vide qui resemble à un repertoire ?[JAVA]Récuperer tout les noeuds d'un JTree selectionnés
Plus de sujets relatifs à : JTree


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR