我有两个滚动条(水平和垂直)的JTable。当我使用scrollRectToVisible时,它返回Rectangle,这个动作导致垂直和水平滚动条自动移动到指定的行/列。如何将自动垂直滚动条移动到所需位置,水平滚动条应保持不活动状态?这个方法应该显示我选择的行,但我的JTable非常宽,我想避免在轨道的开头(左侧)自动移动(水平) - >简单的说,我预计水平位置不变。
public void goToSelected() {
int selectedRow = this.getSelectedRow();
if (selectedRow >= 0)
this.scrollRectToVisible(this.getCellRect(selectedRow, 0, true));
}
答案 0 :(得分:3)
水平位置可能会更改,因为您指定了列索引(.lock()
),并且指定的列可能不可见。您可以简单地组合当前可见区域的值和单元格的垂直范围,以获得所需的效果:
0