/ / जावा में विशिष्ट पंक्तियों को दिखाएँ JTable - जावा, स्विंग, जिबेट, रोफिल्टर

जावा में विशिष्ट पंक्तियाँ दिखाएँ

मेरे पास एक जावा टेबल है और TableModel.each row(element) एक आईडी है। मैं विशिष्ट आईडी दिखाना चाहता हूं। इस तत्व को कैसे फ़िल्टर कर सकते हैं? चयनित ID को बदला जा सकता है।

उदाहरण के लिए:

public class L {
int id;
String name;
String family;
}

//----

private static final String[] columnNames = { "name","family"};
private static final Class[] columnClasses = {class.String.class,String.Class};
private Vector<L> list = Vector<L>();

list.add(new L(1,"A","b"));
.
.
.
list.add(new L(100,"AB","aa");

मैं इस आईडी के साथ तत्वों को दिखाना चाहता हूं, उदाहरण के लिए {1 39 45 55 22}।

इन आईडी को कैसे फ़िल्टर कर सकते हैं?

उत्तर:

जवाब के लिए 3 № 1

आप इसे रोफिल्टर और टेबल-सॉर्टर के साथ कर सकते हैं:

final int[] ids = new int[]{1, 39, 45, 55, 22};
RowFilter<Object, Object> filter = new RowFilter<Object, Object>() {
public boolean include(Entry entry) {
L currentObject = (L) (entry.getValue(0));
for(int i=0;i<ids.length;i++){
if(currentObject.getId()==ids[i]){
return true;
}
}
return false;
}
};

TableRowSorter<TableModel> sorter = new TableRowSorter<TableModel>(model);
sorter.setRowFilter(filter);
yourTable.setRowSorter(sorter);

परीक्षण किया गया, यह मेरे लिए काम करता है

उम्मीद है की यह मदद करेगा