将所有JTable单元设置为不可选

时间:2011-11-28 03:47:32

标签: java swing jtable

我正在尝试创建一个只显示数据的JTable,不允许任何编辑或选择。我通过运行来设置所有单元格是不可编辑的:

TableModel model = new DefaultTableModel(data, titles) {
    public boolean isCellEditable(int rowIndex, int mColIndex) {
        return false;
    }
};

但我现在正试图让所有细胞都不可选。我找到了setRowSelectionAllowed方法,它允许我在选择单元格时禁用所选的整行,但这并不能阻止单元格被选中。我查看了DefaultTableModel的方法,但我没有看到任何isCellSelectable方法。有什么建议吗?

1 个答案:

答案 0 :(得分:19)

除了从false返回isCellEditable()之外,请添加这些调用。

table.setFocusable(false);
table.setRowSelectionAllowed(false);