我有一個帶有樹的 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 );
添加回答
舉報
0/150
提交
取消