【问题标题】:JTable + TableCellEditor: Buffer changes on dataJTable + TableCellEditor:缓冲数据变化
【发布时间】:2011-06-10 15:02:04
【问题描述】:

我的问题针对可编辑的 JTables(使用 TableCellEditor)。

某些工具(如 SQLDeveloper)允许用户编辑多条记录、创建新记录或删除现有记录。该表显示了修改后的记录,但修改只是本地的,直到用户单击“保存”按钮(或在 SQLDeveloper 的情况下单击“提交”)。用户还可以恢复他的所有更改。

在带有 JTable 的 Swing 应用程序中实现此行为的最佳方式是什么?

我不认为像 SQLDeveloper 这样的工具会创建表中列出的记录的副本。我的第一个想法是创建一个包装另一个 TableModel 的 TableModel(这允许我使用 TableModel 的任意实现)并仅存储修改后的单元格的值。当行数没有改变时,这很好用。但是如何处理插入或删除行呢?

提前感谢任何提示。

马库斯

【问题讨论】:

    标签: swing jtable tablecelleditor


    【解决方案1】:

    在您的TableModel 中,您可以向父TableModel 注册TableModelListener,并在您的模型中相应地处理插入或删除事件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-22
      • 1970-01-01
      • 1970-01-01
      • 2016-11-10
      相关资源
      最近更新 更多