我有空的 TableModel。当我将此模型设置为 JTable 时,它没有行。我想创建一个空行,用户可以在组合框编辑器中选择值。如果用户选择非空值,则添加第二行并且我在模型中有一个对象。当模型中没有此行的对象时,如何添加空行?
问问题
835 次
2 回答
4
TableModel 是你的朋友:实现它的 setValueAt 方法以在设置值后添加一行。下面是一个通过继承 DefaultTableModel 来实现的示例:
DefaultTableModel model = new DefaultTableModel(1, 3) {
/**
* @inherited <p>
*/
@Override
public void setValueAt(Object aValue, int row, int column) {
super.setValueAt(aValue, row, column);
if (shouldAddRow(row, column)) {
addRow(new Object[] {});
}
}
private boolean shouldAddRow(int lastEditedRow, int lastEditedColumn) {
// implement your logic here
return lastEditedRow == getRowCount() -1;
}
};
于 2011-10-25T07:20:39.643 回答
2
I want to create one empty row, where user can select value in combo box editor.
那不是空行,
您可以将空值添加到 JTable 单元格,更多关于JTable和JComboBox 作为编辑器的教程,以及此处的示例
于 2011-10-25T07:18:59.030 回答