держать строку в поле зрения в той же позиции - PullRequest
1 голос
/ 01 ноября 2011

У меня есть таблица, в которую я могу добавить несколько фильтров к данным, отображаемым в таблице, я хотел бы иметь возможность сохранять определенную строку в той же позиции на экране, для выбора строки я выбрал верхнюю строку поскольку единственная строка, которую я знаю, есть, если есть какие-либо данные (может быть единственной строкой), когда меняются фильтры, мне нужно прокрутить эту строку (или одну рядом с ней), я могу найти номер строки элемента, который я хочу перейти после изменения данных я хочу перейти.

В настоящее время я использую jTable.scrollRectToVisible(new Rectangle(jTable.getCellRect(rowId, 0, true)));, но это только подтверждает его. и так как в большинстве случаев изменение данных заставило мое представление перейти вверх, оно прокручивает строку в нижней части представления. Как мне лучше всего получить строку в верхней части моего зрения? в случае, если строка находится в конце моих данных, она должна просто прокрутиться вниз, а не заставлять пустое место в поле прокрутки, чтобы получить ее к вершине.

1 Ответ

2 голосов
/ 01 ноября 2011
scrollPane.getViewport().setViewPosition(Point);

Точка будет возвращением позиции x / y из метода getCellRect (...).

...