문제

나는 그것을 안다 JTable 단일 열을 기준으로 정렬할 수 있습니다.하지만 다중 열 정렬을 허용하는 것이 가능합니까, 아니면 코드를 직접 작성해야 합니까?

도움이 되었습니까?

해결책

호출 시 둘 이상의 정렬 키를 지정하여 여러 열을 기준으로 정렬할 수 있습니다. setSortKeys 에서 RowSorter 당신은 사용하고 있습니다.

다른 팁

들여다보다 JX테이블.JXTable은 다중 열 정렬과 JTable이 제공하지 않는 기타 기능을 지원하는 JTable의 확장입니다.JDNC/SwingLabs에서 무료로 제공됩니다.

TableRowSorter 및 이와 관련된 Comparator를 설정할 수 있어야 합니다.예:

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));

netbeans 컬렉션의 ETable입니다.
org-netbeans-swing-outline.jar의 일부입니다.
Google 검색으로 검색해 보세요.ETable은 주로 아웃라인(TreeTable)의 기초이지만 다중 열 순서 지정 및 기타 여러 가지 유용한 기능이 내장되어 있습니다.

"Jtable이 단일 열을 기준으로 정렬할 수 있다는 것을 알고 있습니다.하지만 다중 열 정렬을 허용하는 것이 가능합니까, 아니면 코드를 직접 작성해야 합니까?"

테이블 정렬 및 필터링은 분류기 개체에 의해 관리됩니다.분류기 객체를 제공하는 가장 쉬운 방법은 autoCreateRowSorter 바인딩 속성을 true로 설정하는 것입니다.

JTable table = new JTable();
table.setAutoCreateRowSorter(true);

이 조치는 javax.swing.table.TableRowSorter의 인스턴스인 행 분류기를 정의합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top