我有一个包含三列的 JTable。对于每一行,我都有一个词,它的类型和出现的次数;例如在下图中,字符串“Rosing Prize”出现了两次。
从这个 JTable 开始,我想构建一个直方图,将第一列和最后一列作为输入。第一列是柱的名称,最后一列是它的高度;当用户选择一些行时,它们会显示在直方图中。
例如,在这种情况下,我选择了 4 行:
输出是四个 J 帧:第一个只有一个条(代表第一行);在第二个 J 框架中,我有两个条(第一行和第二行);在第三个 JFrame 中,第一行、第二行和第三行有 3 个条,最后在第四个和最后一个 JFrame 中,我得到了正确的输出:
我想到了两种解决这个问题的可能性:
- 添加一个 Jbutton 并在按下它后在直方图中绘制选定的行
- 将所有 JFrame 添加到 ArrayList 并仅打印最后一个。
有没有更好的解决方案?
最佳答案
I added a
ListSelectionListener
listener to my table model.
在你的ListSelectionListener
, 仅在 getValueIsAdjusting()
时更新图表的数据集是 false
。这将推迟更新,直到选择稳定为止。
关于java - 从 JTable 到直方图 - Swing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36118587/