【发布时间】:2012-05-14 03:02:29
【问题描述】:
我有一个经常更新的 JTable。它位于滚动窗格内。
有时我们会看到一条我们想深入研究的消息。不幸的是,由于更新的数量,消息将在我们完成查看之前从可见屏幕滚动出来。
我希望能够在我们检查消息时冻结视口/滚动,但仍允许表格模型使用新消息进行更新。
我可以使用以下代码将所选行移至顶部:
int firstSelectedRow = table.getSelectedRow();
Rectangle rowLocation = table.getCellRect(firstSelectedRow, 0, false);
scroll.getVerticalScrollBar().setValue(rowLocation.y);
freezeScrolling.setText("Resume Updates");
但这只会在按下按钮时发生,然后它会快速滚动。
有没有办法告诉视口/滚动窗格冻结选择并关闭它,以便滚动窗格按预期更新?
【问题讨论】:
标签: java swing jtable jscrollpane