질문을 올바르게 이해하면 RowFilter
클래스가 필요한 것을 정확히 수행해야합니다. 에만 동작합니다 만약 당신이 당신의 JTable에 첫 번째 통화 setAutoCreateRowSorter(true)
:
private void updateFilter() {
final String prefix = textField.getText().toLowerCase();
((TableRowSorter<?>) table.getRowSorter()).setRowFilter(
new RowFilter<Object, Integer>() {
public boolean include(Entry<?, ? extends Integer> entry) {
String name = entry.getStringValue(COLUMN_LASTNAME);
return name.toLowerCase().startsWith(prefix);
}
});
}
당신은의 DocumentListener의 메소드를 호출 할 수 있습니다 :
searchTextField.getDocument().addDocumentListener(new DocumentListener() {
public void changedUpdate(DocumentEvent event) {
updateFilter();
}
public void insertUpdate(DocumentEvent event) {
updateFilter();
}
public void removeUpdate(DocumentEvent event) {
updateFilter();
}
});
출처
2013-10-19 23:18:49
VGR
당신이 코드를 보여줄 수 있습니까? – Trein
내가 틀렸다면 정정 해주세요.하지만 테이블 정렬을 원하지 않는 것처럼 들립니다. 오히려 테이블을 필터링해야합니다. – VGR