Есть ли такая функция, как "changeSelection ()" для выбора строки, но сверху таблицы, а не снизу? - PullRequest
1 голос
/ 11 июля 2019

У меня есть jTable с деревом, которое автоматически выбирает строку ответа из предыдущего действия.Но измените прокрутку выбора и выберите строку как последнюю видимую внизу.Для меня это uncofortable, потому что это дерево, и гораздо лучше его прокрутить и выбрать строку, которая будет первой видимой в верхней части таблицы.знаю правильное значение, потому что панель может изменить размер.

Я ожидаю, что автоматическая прокрутка к строке и эта строка будет отмечена на top таблицы.Теперь выполняется автоматическая прокрутка до строки, которая отмечается в внизу таблицы.

1 Ответ

1 голос
/ 11 июля 2019

Метод 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 );
...