swing:tree

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
swing:tree [2015/05/18 03:53]
gthanos [Ανταποκρινόμενοι στα events ενός δένδρου]
swing:tree [2016/02/26 11:15] (current)
Line 167: Line 167:
 </​code>​ </​code>​
  
-==== Αλλάζοντας τα εικονίδια ενός αντικειμένου ====+==== Αλλάζοντας τα εικονίδια ​και την ​εμφάνιση στους κόμβους ενός δένδρου ==== 
 + 
 +Ένα από τα βασικά πράγματα που πιθανόν θα χρειαστείτε είναι να μεταβάλλεται την εμφάνιση των ​κόμβων ​ενός δένδρου βάζοντας διαφορετικά εικονίδια για τους κόμβους που είναι φύλλα, για τους κόμβους που δεν είναι φύλλα, αλλά είναι επιλεγμένοι και ανοιχτοί ή για τους κόμβους που είναι κλειστοί. Για να το κάνετε αυτό θα χρειαστείτε ένα αντικείμενο που υλοποιεί το interface [[http://​docs.oracle.com/​javase/​7/​docs/​api/​javax/​swing/​tree/​TreeCellRenderer.html|TreeCellRenderer]]. Η πιο απλή επιλογή είναι να χρησιμοποιήσετε την κλάση [[http://​docs.oracle.com/​javase/​7/​docs/​api/​javax/​swing/​tree/​DefaultTreeCellRenderer.html|DefaultTreeCellRenderer]]. Το παρακάτω απόσπασμα είναι ενδεικτικό για το πως μπορείτε να αλλάξετε τα εικονίδια των κόμβων σε κάθε μία από τις παραπάνω κατηγορίες. 
 +<code java> 
 +  DefaultTreeCellRenderer tRenderer ​  
 +        new DefaultTreeCellRenderer();​ 
 +  ImageIcon folderIcon ​new ImageIcon( System.getProperty("​user.dir"​)+"/​icons/​small/​folder.png"​ ); 
 +  tRenderer.setLeafIcon( folderIcon ); 
 +  tRenderer.setClosedIcon( folderIcon ); 
 +  tRenderer.setOpenIcon( folderIcon ); 
 +  tRenderer.setTextSelectionColor(Color.RED);​ 
 +  tree.setCellRenderer(tRenderer);​ 
 +</​code>​
  
  
  
    
swing/tree.1431921195.txt.gz · Last modified: 2016/02/26 11:15 (external edit)