2012-07-06 3 views
2

У меня есть JScrollPane, который содержит JPanel размером 5000х5000 пикселей. Я хочу ограничить JScrollPane, чтобы показать только часть этого JPanel.Ограничить JScrollPane только для отображения части его содержимого

Например прямоугольник определяется двумя точками (X, Y):

  • (500.500) (левый верхний угол)
  • (3000,3000) (нижний правый угол).

Я попытался

myJScrollPane.getHorizontalScrollBar().setMinimum(500); 

и

myJScrollPane.getHorizontalScrollBar().setMaximum(3000); 

Но это не работает. Функция setMinimum только устанавливает положение окна просмотра на scrollpane, setMaximum ничего не делает.

ответ

2

Измените свой JPanel вместо того, чтобы иметь размер (2500, 2500) и сделать желаемый фрагмент изображения. Используйте translate()Graphics в paintComponent() для этого.

+0

Дело в том, что я использую JPanel как координатное пространство для увеличения геометрического объекта, сделанного из JLabels. Я хочу ограничить полосы прокрутки, чтобы было видно только пространство, содержащее объект. Я хочу сохранить координаты объекта. – user1506145

Смежные вопросы