Как отобразить четыре боковые полосы прокрутки на JScrollPane - PullRequest
1 голос
/ 09 марта 2011

У меня есть JScrollPane, которая содержит панель типа JScrollPane scrollWindow = new JScrollPane(window); Я переопределил getPreferredSize() для отображения полос прокрутки справа и снизу, когда я перетаскиваю фигуру за пределы экрана, это работало нормально Проблема в том, что при перетаскивании влево или вверх полосы прокрутки не отображаются.

Есть предложения?

Ответы [ 2 ]

3 голосов
/ 10 марта 2011

JScrollPane не имеет концепции отображения полос прокрутки для отрицательных значений.Все компоненты Swing начинаются с (0, 0) и увеличиваются по ширине и высоте.

Если вы хотите перетащить компоненты в отрицательное положение, вы будете пересчитывать положение всех компонентов, которые должны быть переведены в отрицательное значениеперетаскиваемого компонента.

1 голос
/ 09 марта 2011

Я бы сказал, что пользовательский интерфейс определяет только 2 полосы прокрутки: правую и нижнюю. Вы можете добавить 2 дополнительные полосы прокрутки, используя методы setColumnHeaderView и setRowHeaderView, и каким-то образом синхронизировать их (используя прослушиватель и т. Д.).

...