A JTable জটিল ডেটা স্ট্রাকচার প্রদর্শনের জন্য JComponent-এর একটি সাবক্লাস। একটি JTable উপাদান মডেল ভিউ কন্ট্রোলার (MVC) ডিজাইন প্যাটার্ন অনুসরণ করতে পারে সারি এবং কলামে ডেটা প্রদর্শনের জন্য . একটি JTable TableModelListener, TableColumnModelListener, ListSelectionListener, CellEditorListener, RowSorterListener তৈরি করতে পারে ইন্টারফেস আমরা JTextField-এ একটি স্ট্রিং ইনপুট করে একটি JTable-এর অনুসন্ধান কার্যকারিতা বাস্তবায়ন করতে পারি , এটি একটি JTable এ উপলব্ধ একটি স্ট্রিং অনুসন্ধান করতে পারে। যদি স্ট্রিংটি মেলে তবে এটি শুধুমাত্র একটি JTable এ সংশ্লিষ্ট মান প্রদর্শন করতে পারে। আমরা DocumentListener ব্যবহার করতে পারি এটি বাস্তবায়নের জন্য একটি JTextField এর ইন্টারফেস।
উদাহরণ
import java.awt.*;
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.table.*;
public class JTableSearchTest extends JFrame {
private JTextField jtf;
private JLabel searchLbl;
private TableModel model;
private JTable table;
private TableRowSorter sorter;
private JScrollPane jsp;
public JTableSearchTest() {
setTitle("JTableSearch Test");
jtf = new JTextField(15);
searchLbl = new JLabel("Search");
String[] columnNames = {"Name", "Technology"};
Object[][] rowData = {{"Raja", "Java"},{"Vineet", "Java Script"},{"Archana", "Python"},{"Krishna", "Scala"},{"Adithya", "AWS"},{"Jai", ".Net"}};
model = new DefaultTableModel(rowData, columnNames);
sorter = new TableRowSorter<>(model);
table = new JTable(model);
table.setRowSorter(sorter);
setLayout(new FlowLayout(FlowLayout.CENTER));
jsp = new JScrollPane(table);
add(searchLbl);
add(jtf);
add(jsp);
jtf.getDocument().addDocumentListener(new DocumentListener() {
@Override
public void insertUpdate(DocumentEvent e) {
search(jtf.getText());
}
@Override
public void removeUpdate(DocumentEvent e) {
search(jtf.getText());
}
@Override
public void changedUpdate(DocumentEvent e) {
search(jtf.getText());
}
public void search(String str) {
if (str.length() == 0) {
sorter.setRowFilter(null);
} else {
sorter.setRowFilter(RowFilter.regexFilter(str));
}
}
});
setSize(475, 300);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setResizable(false);
setVisible(true);
}
public static void main(String[] args) {
new JTableSearchTest();
}
} আউটপুট

