Differences
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:lists [2018/03/27 15:23] gthanos [Listening Interface] |
swing:lists [2018/03/27 20:51] gthanos [Παράδειγμα] |
| Μία λίστα αποτελείται από μία σειρά επιλογών τις οποίες μπορείτε να παραθέσετε σε μία ή περισσότερες γραμμές ή στήλες. Η λίστα υλοποιείται από την κλάση [[http://docs.oracle.com/javase/7/docs/api/javax/swing/JList.html|javax.swing.JList]]. | Μία λίστα αποτελείται από μία σειρά επιλογών τις οποίες μπορείτε να παραθέσετε σε μία ή περισσότερες γραμμές ή στήλες. Η λίστα υλοποιείται από την κλάση [[http://docs.oracle.com/javase/7/docs/api/javax/swing/JList.html|javax.swing.JList]]. |
| |
| Για την δημιουργία μίας λίστας είναι απαραίτητη η δημιουργία ενός αντικειμένου τύπου [[https://docs.oracle.com/javase/8/docs/api/javax/swing/ListModel.html|javax.swing.ListModel]], το οποίο αποθηκεύει τα δεδομένα που θα εμφανιστούν στην λίστα. Η Java παρέχει την default υλοποίηση [[https://docs.oracle.com/javase/8/docs/api/javax/swing/DefaultListModel.html|DefaultListModel]] η οποία είναι ικανοποιητική για την διαχείριση των δεδομένων της λίστας. | Για την δημιουργία μίας λίστας είναι απαραίτητη η δημιουργία ενός αντικειμένου τύπου [[https://docs.oracle.com/javase/8/docs/api/javax/swing/ListModel.html|javax.swing.ListModel]], το οποίο αποθηκεύει τα δεδομένα που θα εμφανιστούν στην λίστα. Η Java παρέχει την default υλοποίηση [[https://docs.oracle.com/javase/8/docs/api/javax/swing/DefaultListModel.html|DefaultListModel]] για την διαχείριση των δεδομένων που περιέχει η λίστα. |
| |
| Εναλλακτικά της χρήσης ενός αντικειμένου τύπου //ListModel//, μπορείτε να χρησιμοποιήσετε έναν πίνακα αντικειμένων ή ένα αντικείμενο τύπου [[http://docs.oracle.com/javase/7/docs/api/java/util/Vector.html|java.util.Vector]] (δείτε τους κατασκευαστές της κλάσης). Σε αυτή την περίπτωση η λίστα των αντικειμένων είναι σταθερή και δεν μπορεί να μεταβληθεί. Αντίθετα, η χρήση ενός αντικειμένου τύπου //ListModel// επιτρέπει την πρόσθεση ή την αφαίρεση επιλογών από την λίστα και για αυτό θεωρείται πιο πρακτική. | Εναλλακτικά της χρήσης ενός αντικειμένου τύπου //ListModel//, μπορείτε να χρησιμοποιήσετε έναν πίνακα αντικειμένων ή ένα αντικείμενο τύπου [[http://docs.oracle.com/javase/7/docs/api/java/util/Vector.html|java.util.Vector]] (δείτε τους κατασκευαστές της κλάσης). Σε αυτή την περίπτωση η λίστα των αντικειμένων είναι σταθερή και δεν μπορεί να μεταβληθεί. Αντίθετα, η χρήση ενός αντικειμένου τύπου //ListModel// επιτρέπει την πρόσθεση ή την αφαίρεση επιλογών από την λίστα και για αυτό θεωρείται πιο πρακτική. |
| |
| <WRAP tip 80% center round> | <WRAP tip 80% center round> |
| Η κλάση JList δεν έχει την δυνατότητα scrolling. Αν θέλετε να προσθέσετε scrolling θα πρέπει να το κάνετε δημιουργώντας ένα αντικείμενο του [[http://docs.oracle.com/javase/7/docs/api/javax/swing/JScrollPane.html|javax.swing.JScrollPane]]. | Η κλάση JList δεν έχει την δυνατότητα scrolling. Αν θέλετε να προσθέσετε scrolling θα πρέπει να το κάνετε δημιουργώντας ένα αντικείμενο του [[http://docs.oracle.com/javase/7/docs/api/javax/swing/JScrollPane.html|javax.swing.JScrollPane]], μέσα στο οποίο θα τοποθετήσετε το αντικείμενο τύπου **JList**. |
| </WRAP> | </WRAP> |
| |
| </code> | </code> |
| |
| | | Προηγούμενο: [[:swing:jscrollpane | Scroll Panes ]] | [[:toc | Περιεχόμενα ]] | Επόμενο: [[:swing:lists | Η κλάση JComboBox ]] | |