为了账号安全,请及时绑定邮箱和手机立即绑定

是否有像“changeSelection()”这样的函数来选择行但在表格顶部而不是底部?

是否有像“changeSelection()”这样的函数来选择行但在表格顶部而不是底部?

绝地无双 2023-03-23 13:35:17
我有一个带有树的 jTable,它会自动从上一个操作中选择相应的行。但是 changeSelection 滚动并选择底部最后可见的行。对我来说很不舒服,因为它是树,最好滚动并选择行作为表格顶部的第一个可见部分。我正在尝试table.scrollRectToVisible(table.getCellRect(row,column, true));相同的结果并尝试自定义设置 scrollBar 值,但我不知道正确的值,因为面板可以改变大小。我希望自动滚动到行并且该行将标记在表格的顶部。现在自动滚动到行并标记在表格底部。
查看完整描述

1 回答

?
幕布斯7119047

TA贡献1794条经验 获得超8个赞

该scrollRectToVisible(...)方法仅滚动 的JViewport以JScrollPane确保Rectangle可见。所以当你向下滚动时。它将显示在底部。如果向上滚动,它将显示在顶部。


控制滚动的更简单方法是JViewport自己设置位置:


JViewport viewport = (JViewport)scrollPane.getViewport();

Rectangle rectangle = table.getCellRect(row, column, true);

Point point = new Point(rectangle.x, rectangle.y);

viewport.setViewPosition( point );


查看完整回答
反对 回复 2023-03-23
  • 1 回答
  • 0 关注
  • 105 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号