0

我需要开发一个带有交互式表格的 GUI,用户必须能够手动插入行或从 Excel 文件导入/保存信息。假设我在文件中有一堆个人信息(年龄、姓名、地址)。我需要一个可重复使用的面板,我可以在上面选择某个“年龄”,然后只显示那个年龄的人。

我正在考虑两种策略:

选项1:

  • 读取 Excel 文件并将所有信息复制到 List<Object[]> 中。每个对象都包含个人信息(年龄、姓名、地址)。
  • 如果我想按“年龄”过滤:阅读 List<> 寻找具有特定“年龄”的对象。
  • 使用这些对象更新 tableModel(tableModel 具有 List< Object[]> 作为属性)。
  • 使用更新后的 tableModel 更新 jTable。

        inputsTableModel.inputsTableDataList = temp_list;
    inputsTable.setModel(inputsTableModel);
    panel1.add(inputsTableScroller, "2, 12, 3, 1, fill, fill");
    inputsTableScroller.setViewportView(inputsTable);
    

选项 2:

  • 从 Excel 中读取并直接复制到 tableModel(tableModel 将包含所有信息)。
  • 过滤模型中的信息,更新jTable。

我的观点是:如果用户想要手动编辑表格,然后将更改保存到 Excel 文件,选项 2 显然是更好的解决方案。但有可能吗?是否可以过滤tableModel中的信息,然后更新表格?

另一方面,使用 Option1 时如何实现此修改和保存问题?

4

0 回答 0