This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
swing:tree [2015/05/18 03:39] gthanos [Ανταποκρινόμενοι στα events ενός δένδρου] |
swing:tree [2015/05/18 03:58] gthanos [Αλλάζοντας τα εικονίδια ενός αντικειμένου] |
||
---|---|---|---|
Line 151: | Line 151: | ||
=== TreeModelEvents === | === TreeModelEvents === | ||
- | Τα events αυτού του τύπου δημιουργούνται όταν έχουμε μεταβολή στην δομή του δένδρου. Σε αυτή την περίπτωση θα χρειαστείτε μία κλάση που υλοποιεί το interface [[http://docs.oracle.com/javase/7/docs/api/javax/swing/event/TreeModelListener.html|TreeModelListener]] για να λάβετε τις μεταβολές στη δομή του δένδρου. Ο συγκεκριμένος Listener ορίζει τις παρακάτω μεθόδους. | + | Τα events [[http://docs.oracle.com/javase/7/docs/api/javax/swing/event/TreeModelEvent.html|αυτού του τύπου]] δημιουργούνται όταν έχουμε μεταβολή στην δομή του δένδρου. Σε αυτή την περίπτωση θα χρειαστείτε μία κλάση που υλοποιεί το interface [[http://docs.oracle.com/javase/7/docs/api/javax/swing/event/TreeModelListener.html|TreeModelListener]] για να λάβετε τις μεταβολές στη δομή του δένδρου. Ο συγκεκριμένος Listener ορίζει τις παρακάτω μεθόδους. |
<code java> | <code java> | ||
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]] που αποτελεί την πιο απλή επιλογή. | ||