Java:JTable重新排序的行和刷新
-
18-09-2019 - |
题
我有一个 JTable
(延长)和执行情况 TableModel
, 在我们的方法...
moveEntryUp(int rowIdx)
moveEntryDown(int rowIdx)
...在表模型的实施。我已经验证了这些正常工作。
然而,我具有的问题在得到修改表模式传播到实际 JTable
.在此表我只允许单个行选择,并有独立的按钮 起来 和 下.当行选举,我需要能够举行了下来, 和 保留的选择。
E.g。
如果我行 [A, B, C(selected)]
, 和我按了按钮,
我应该得到的 [A, C(selected), B]
.
各种办法,我已经试过这么远无法刷新的数值在JTable,或者失去选择。
注:
我犹豫使用的解决方案,它需要一个明确的呼吁 repaint()
.
假设所有的细胞 JTable
都 不 编辑。
解决方案
回答自己的问题:
int row = mTable.getSelectedRow();
mTableModel.moveEntryUp(row);
mTable.getSelectionModel().setSelectionInterval(row -1, row -1);
哪里 mTable
是JTable, mTableModel
是我的表型的实施,相当于 mTable.getModel()
(和类型转换).
应该探长之前求!
不隶属于 StackOverflow