为什么我们必须使用TableModel作为JTable?

时间:2013-04-16 20:11:28

标签: java swing jtable tablemodel

如果我想在Java中使用JTable,在我看来,在按钮后面添加行并进行修改,或者总是必须使用TableModel(这可能是默认值)或者你自己创造的那个)但我的问题是:为什么我们必须使用它。在我看到的任何帖子中都找不到这个。有人可以解释这是如何工作的以及为什么有必要?为什么我们不能在没有模型的情况下向JTable添加行。

在我看来,如果你想只显示一些记录,但是在创建时你还不知道所有的行,那么只需像table.add()那样添加行就会更容易。 您可以使用内部数据创建表,而无需附加模型。那么为什么不添加数据?

或者我错了,你可以在没有模型的情况下添加数据吗?

1 个答案:

答案 0 :(得分:4)

TableModel接口定义了JTable(视图)呈现其内容(模型)所需的最小方法。 AbstractTableModel是一个抽象实现,它提供事件管道,只留下three methods 必须被覆盖。 DefaultTableModel继续包含基于Vector的内部数据模型以及改变内部模型的便捷方法。请参阅Creating a Table Model进行比较,并将这些对比examples