从JTable第一行删除焦点

时间:2010-11-16 13:25:12

标签: java swing focus jtable

我有JTable和行。默认情况下,第一行被选中并且焦点在其中。如何取消选择第一行并将焦点更改为.addListener(new RowSetListener()在第一行中也可以使用的其他位置。

我已经尝试过了:

tableZaposlenciView1.setRowSelectionAllowed(true);        
//tableZaposlenciView1.getSelectionModel().clearSelection();
//tableZaposlenciView1.setColumnSelectionInterval(0,0);
//tableZaposlenciView1.setRowSelectionInterval(false,false);        
tableZaposlenciView1.changeSelection(0,0,false,false);
tableZaposlenciView1.requestFocus();

但它不起作用。

2 个答案:

答案 0 :(得分:3)

看看JTable的changeSelection()方法。我相信它能做到你想要的。

编辑:如果你想清除选择:

JTable table = ...;
table.getSelectionModel().clearSelection();

答案 1 :(得分:0)

如果其他人有与ADF和JTable类似的问题,这里是解决方案。我通过覆盖VO impl上的first()实现了这一点。我的问题可以解决。

在许多情况下派上用场:

  • 刷新后没有选择(只从first()返回null)
  • 刷新后重新选择一个特定的行(在刷新之前,存储行键,在first()中刷新后如果找到存储的键,则导航到该行并从first()返回该行)
  • 找到下一个匹配行,供用户在刷新工作清单后进行处理
  • 避免在VL情况下执行昂贵的详细信息