gpt4 book ai didi

java - 清除一个 JTable 中的数据也会删除另一个 JTable

转载 作者:行者123 更新时间:2023-12-02 04:43:24 28 4
gpt4 key购买 nike

我正在使用 Swing 编写 Java 应用程序。我有两个表,我必须将内容从一个表复制到另一个表(复制)。问题是,如果我清除目标表行,那么我的源表行也会被删除。

如果我按 CopyAll,那么我会将 Table-A 中的所有内容复制到 Table-B。如果我按清除,那么我必须清除Table-B。但问题是Table-A 也被清除了。

用于复制

public void copyAll() {
TableModel tableAModel = tableA.getModel();
tableB.setModel(tableAModel);
repaint();
}

用于清除行(我正在为table-B做)

public void clearTableB() {
DefaultTableModel clearTableData = (DefaultTableModel) tableB.getModel();
clearTableData.setNumRows(0);
}

我认为在 copyAll() 方法中复制时遇到问题。我正在获取 tableA 的模型,然后在 clearTable() 方法中清除它。

如果上述copyAll()方法错误,请告诉我如何实现copyAll()removeTableB()

最佳答案

您已在两个表之间复制了TableModel。这意味着两个表共享相同的数据。如果删除 TableModel 的内容,两个表都会丢失其数据。

您应该创建两个单独的 TableModel 实例,并保持它们同步(例如,通过使用监听器,因为 TableModel 在每次更新模型时都会触发事件)

关于java - 清除一个 JTable 中的数据也会删除另一个 JTable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11948258/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com