public class TableModel extends DefaultTableModel{ public boolean isCellEditable(int row, int column){ return row!=3; } }
To:bradwoo8621() class TableCellRenderer extends DefaultTableCellRenderer 这个东西我是刚学的,不知道还有其他的东西。
TableModel dataModel = new AbstractTableModel() { private static final long serialVersionUID = -6709309394952832360L; public int getColumnCount() { return 10; } public int getRowCount() { return 10;} public Object getValueAt(int row, int col) { return new Integer(row*col); } public boolean isCellEditable(int row,int col){return row!=3;}; }; JTable table = new JTable(dataModel); JScrollPane scrollpane = new JScrollPane(table); JFrame frame = new JFrame(); frame.add(scrollpane); frame.pack(); frame.setVisible(true); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);这样的啊,呵呵,第一次用到。
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int column) {
if (row==3) {
super.getTableCellRendererComponent(table, value, isSelected,
hasFocus, row, column).setEnabled(false);
System.out.println("Row : "+ row);
}else{
super.getTableCellRendererComponent(table, value, isSelected,
hasFocus, row, column).setEnabled(true);
}
System.out.println(row);
return this;
}}
写成
{
return row!=3;
}
啥意思,我咋看不懂呢? Table的编辑不是用Editor的么?和Renderer有什么关系?
public boolean isCellEditable(int row, int column){
return row!=3;
}
}
class TableCellRenderer extends DefaultTableCellRenderer
这个东西我是刚学的,不知道还有其他的东西。
private static final long serialVersionUID = -6709309394952832360L;
public int getColumnCount() { return 10; }
public int getRowCount() { return 10;}
public Object getValueAt(int row, int col) { return new Integer(row*col); }
public boolean isCellEditable(int row,int col){return row!=3;};
};
JTable table = new JTable(dataModel);
JScrollPane scrollpane = new JScrollPane(table);
JFrame frame = new JFrame();
frame.add(scrollpane);
frame.pack();
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);这样的啊,呵呵,第一次用到。
具体的可以看看jdk