1

我有一个程序可以创建一个巨大的 jtable 并启用 CellSelection 以复制到剪贴板。我还有一个复制完整表格的操作。

它通过以下方式做到这一点:

correspondentTable.selectAll();
// then copy
correspondentTable.clearSelection();

如果在此操作之后恢复“复杂”选择,那就太好了。

到目前为止,我发现table.changeselection(row, col, toggle, extend)但我想知道是否有一种“更优雅”的方式来做到这一点。

4

1 回答 1

1

如果您正在寻找单个单元格,您可以遍历表格单元格并使用isCellSelected. 实际上,我认为没有比这更“优雅”的解决方案了。

应该可以限制您需要检查的范围:

用于getSelectedRow()获取最小索引,getSelectedRows()获取所有索引。列也有类似的功能。

您将这些值存储在某处并用于changeSelection恢复选择。

编辑:您可以获得存储选择值的列模型 ( getColumnModel()) 和选择模型 ( )。getSelectionModel()如果您可以复制它们,您可以在之后重新应用这些值。

于 2012-04-04T09:33:39.077 回答