【发布时间】:2011-06-01 06:29:24
【问题描述】:
我一直在阅读与我类似的帖子,并通过Java tutorial page 阅读,但我似乎无法让它发挥作用。我不确定我是否遗漏了一些基本的东西......
我在下面有一个自定义表格模型,我需要能够从中删除行。该表初始化为空,并通过组合框和添加按钮添加行。还有一个删除按钮,需要将选中的行从表格中删除。
class TableModel extends AbstractTableModel
{
private String[] columnNames = {"Enabled", "Value" };
protected Class[] columnClasses = new Class[] { Boolean.class, String.class };
public int getColumnCount() { return columnNames.length; }
public int getRowCount() { return filters.size(); }
public String getColumnName(int col) { return columnNames[col]; }
public Class getColumnClass(int col) { return columnClasses[col]; }
public Object getValueAt(int row, int col) { ... }
public void setValueAt(Object value, int row, int col) { ... }
public void addRow(String value)
{
fireTableRowsInserted(filters.size() - 1, filters.size() - 1);
int row = filters.size() -1 ;
int col = 1;
setValueAt(value, row, col);
}
public void removeRow(int row)
{
fireTableRowsDeleted(selectedRow, selectedRow);
}
}
我已通过控制台中的打印确认 selectedRow 包含正确的行。 fireTableRowsDeleted 函数什么都不做。该行仍然存在。如何只删除特定行?
谢谢,
【问题讨论】:
-
过滤器对象来自哪里? @njozwiak
标签: java jtable delete-row tablemodel abstracttablemodel