JTable là một lớp con của JComponent tạo bảng hiển thị thông tin theo nhiều hàng và cột. Khi giá trị được chọn từ JTable, TableModelEvent được sinh ra, xử lý bằng TableModelListener. Mặc định, chúng ta có thể sắp xếp lại cột trong JTable. Chúng ta có thể không cho phép người dùng sắp xếp lại cột bằng table.getTableHeader().setReorderingAllowed() với giá trị false.
Ví dụ
import java.awt.*;
import javax.swing.*;
public final class JTableColumnReorderingTest extends JFrame {
JTable table;
JScrollPane scrollPane;
public JTableColumnReorderingTest() {
setTitle("JTableColumnReordering Test");
String[] columnNames = {"Name", "Mobile Number", "Course"};
Object[][] data = {{"Raja", "123456789", "Java"}, {"Adithya", "456123789", ".Net"},
{"Vineet", "789456123", "Java Script"}, {"Archana", "987456321", "Python"},
{"Krishna", "321456987", "Scala"}, {"Jai", "456321789", "ServiceNow"}};
table = new JTable(data, columnNames);
scrollPane = new JScrollPane(table);
table.getTableHeader().setReorderingAllowed(false); // Không cho sắp xếp lại cột
table.getTableHeader().setResizingAllowed(false);
add(scrollPane);
setSize(375, 250);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
public static void main(String[] args) {
new JTableColumnReorderingTest();
}
}
Kết quả
