JAVA jTable - 如何使所有细胞不可编辑?

时间:2011-01-15 09:10:29

标签: java swing jtable netbeans-6.9

我有一个jTable日历,工作正常,我只是希望用户无法编辑任何内容。我该怎么办?

非常感谢!!

PS:我使用netbeans 6.9。

5 个答案:

答案 0 :(得分:9)

DefaultTableModel tableModel = new DefaultTableModel() {

    @Override
    public boolean isCellEditable(int row, int column) {
        //all cells false
        return false;
    }
};

table.setModel(tableModel);

答案 1 :(得分:3)

答案 2 :(得分:3)

在您的表模型(扩展AbstractTableModel)中,您需要实现如下:

     public class MyTableModel extends AbstractTableModel {
           //table is not editable
            public boolean isCellEditable() {
                return false;
            }
     }

答案 3 :(得分:3)

好吧,也许这是一个新功能,但我发现我可以使用:

JTable table = new JTable();
...
table.setEnabled(false);

这对我有用。

答案 4 :(得分:0)

试试这段代码;它简单易懂。

 DefaultTableModel  model =new DefaultTableModel(6,8);
 table = new JTable(model){

            private static final long serialVersionUID = 2485117672771964339L;

            @Override
                public boolean isCellEditable ( int row, int column )
                {
                    return editable;
                }
      };