Varios de clasificación de la columna en el JTable
Pregunta
Sé que JTable
puede ordenar por una sola columna.Pero es posible para permitir múltiples de clasificación de la columna o tengo que escribir el código de mí mismo?
Solución
Usted puede ordenar por varias columnas si se especifica más de una clave de ordenación cuando se llama a setSortKeys
en el RowSorter
estás usando.
Otros consejos
Mira en JXTable.JXTable es una extensión de JTable que soporta multi-columna de ordenación, así como otras funciones que JTable no ofrece.Es libremente disponible de JDNC / SwingLabs.
Usted debe ser capaz de establecer la TableRowSorter y el Comparador asociados con él.Ejemplo:
TableModel myModel = createMyTableModel();
JTable table = new JTable(myModel);
TableRowSorter t = new TableRowSorter(myModel);
t.setComparator(column that the comparator works against, Comparator<?> comparator);
table.setRowSorter(new TableRowSorter(myModel));
ETable de netbeans colección.
Es parte de org-netbeans-swing-outline.jar
Una búsqueda en google algo para subir el volumen.El ETable es principalmente una base para el Esquema (un TreeTable) pero tiene multi-columna de pedido construido en así como muchas otras características interesantes
"Sé que Jtable puede ordenar por una sola columna.Pero es posible para permitir múltiples de clasificación de la columna o tengo que escribir el código de mí mismo?"
Tabla de clasificación y filtrado es administrado por un clasificador de objeto.La forma más sencilla de proporcionar un clasificador de objeto es establecer autoCreateRowSorter obligado propiedad a true;
JTable table = new JTable();
table.setAutoCreateRowSorter(true);
Esta acción define una fila clasificador de que es una instancia de javax.el swing.tabla.TableRowSorter.