2

我有一个工作得很好的 jTable 日历,我只是希望用户不能编辑任何东西。我该怎么做?

非常感谢!!

PS:我使用netbeans 6.9。

4

5 回答 5

9
DefaultTableModel tableModel = new DefaultTableModel() {

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

table.setModel(tableModel);
于 2013-03-16T18:33:23.100 回答
3

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

     public class MyTableModel extends AbstractTableModel {
           //table is not editable
            public boolean isCellEditable() {
                return false;
            }
     }
于 2011-01-15T09:21:21.623 回答
3

只需返回falseTableModel 的 isCellEditable() 实现即可

http://download.oracle.com/javase/6/docs/api/javax/swing/table/TableModel.html#isCellEditable%28int,%20int%29

于 2011-01-15T09:18:49.220 回答
3

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

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

这为我完成了工作。

于 2011-08-25T20:15:39.890 回答
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;
                }
      };
于 2011-02-10T17:55:07.600 回答