JTable là một lớp con của JComponent để hiển thị cấu trúc dữ liệu phức tạp. JTable tuân theo Model View Controller (MVC) để hiển thị dữ liệu theo hàng và cột. JTable kích hoạt TableModelListener, TableColumnModelListener, ListSelectionListener, CellEditorListener và RowSorterListener. Mặc định, chúng ta có thể chỉnh sửa văn bản trong ô JTable. Chúng ta cũng có thể vô hiệu hóa chỉnh sửa ô bằng cách gọi phương thức editCellAt() của JTable và bắt nó trả về false.
Ví dụ
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;
public final class DisableJTableMouseClickTest extends JFrame {
private JTable table;
private JScrollPane scrollPane;
public DisableJTableMouseClickTest() {
setTitle("DisableJTableMouseClick Test");
String[] columnNames = {"Country", "Rank"};
Object[][] data = {{"England", "1"}, {"India", "2"}, {"New Zealand", "3"},
{"Australia", "4"}, {"South Africa", "5"}, {"Pakistan", "6"}};
table = new JTable(data, columnNames) {
public boolean editCellAt(int row, int column, java.util.EventObject e) {
return false;
}
};
table.setRowSelectionAllowed(false);
scrollPane = new JScrollPane(table);
add(scrollPane);
setSize(400, 275);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
public static void main(String[] args) {
new DisableJTableMouseClickTest();
}
}
Kết quả
