保持JTable选择

时间:2014-02-03 09:34:55

标签: java swing jtable selectionmodel

当我致电

时,我正在使用JTableMULTIPLE_INTERVAL_SELECTION
 int[] selectedRows = jtable.getSelectedRows();

我正在获取像5,6,8这样的选定行索引数组。现在如果出现错误,我想保持相同的选择。

我正在尝试

_selectionModel.setSelectionInterval(selectedRows[0], selectedRows[selectedRows.length-1]);

但它是从5到8中选择行,如何避免选择之前未选择的第7行?

1 个答案:

答案 0 :(得分:3)

为此,您可以使用addSelectionInterval()方法代替setSelectionInterval()。例如:

import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;

public class Example  {

    public static void main(String[] args) {
        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JTable t = new JTable(10,1);
        frame.add(new JScrollPane(t));

        t.getSelectionModel().clearSelection();
        t.getSelectionModel().addSelectionInterval(5, 6);
        t.getSelectionModel().addSelectionInterval(8, 8);
        frame.pack();
        frame.setVisible(true);
    }

}