Проблема при прокрутке JScrollPane - Потоки - PullRequest
1 голос
/ 27 августа 2010

Ситуация такая:

При нажатии на пункт меню некоторые компоненты добавляются в JScrollPane, размеры компонентов изменяются, затем вызывается метод setVisible JScrollPane. Изменение размеров компонентов вне моего контроля. (Размер TextAreas изменяется в соответствии с их содержимым. Обновления каретки отключены.)

Я хочу прокрутить JScrollPane вниз. Использование invokeLater и Runnable для прокрутки списка с использованием метода getMaximumValue, похоже, не работает в этом случае (хотя обычно это происходит для других частей программы).

Есть ли способ сделать уведомление для потока Runnable после проверки выполнения всего , относящегося к вышеуказанным операциям?

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 27 августа 2010

Вы пытаетесь создать новый поток и вызываете фиктивный invokeAndWait в этом потоке. После этого все ожидающие события должны быть завершены, и ваш код прокрутки должен работать.

1 голос
/ 27 августа 2010

Почему вы делаете это с другим Thread?Не могли бы вы вместо этого использовать

JViewPort view = new JViewPort();
view.setPoint(new Point(0, heightOfContents));
scrollPane.setViewPort(view);

То, или что-то подобное должно делать то, что вам нужно.

...