Heim >Java >javaLernprogramm >Wie kann ich mit Kontrollkästchen ausgewählte Zeilen effizient aus einer JTable abrufen?
Effizientes Abrufen ausgewählter Zeilen in JTable mit AbstractTableModel
Beim Umgang mit großen Tabellen mit Kontrollkästchen in der ersten Spalte, um die Zeilenauswahl zu ermöglichen, erhalten Sie Die ausgewählten Zeilen können ineffizient werden, wenn sie nacheinander durch alle Zeilen erfolgen. In diesem Artikel wird ein alternativer Ansatz untersucht, der einen listenerbasierten Mechanismus umfasst, um unnötiges Durchlaufen zu vermeiden.
Im angegebenen Codebeispiel verwaltet das benutzerdefinierte TableModel, CheckModel, einen Satz ausgewählter Zeilenindizes in der geprüften Variablen. Dieser Satz wird immer dann aktualisiert, wenn sich der Kontrollkästchenwert (Spalte 1) durch die setValueAt()-Methode ändert.
Eine angrenzende JList visualisiert die aktuell ausgewählten Zeilennummern, indem sie auf Änderungen im CheckModel lauscht. Dadurch wird sichergestellt, dass die Liste immer die zuletzt ausgewählten Zeilen widerspiegelt. Die TreeSet-Datenstruktur bewahrt die natürliche Reihenfolge der Elemente.
Vorteile des Listener-basierten Ansatzes:
Zusätzliche Überlegungen:
Das obige ist der detaillierte Inhalt vonWie kann ich mit Kontrollkästchen ausgewählte Zeilen effizient aus einer JTable abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!