Итак, у меня есть макет сетки, в котором в каждой ячейке хранятся JScrollPane. Они также помещаются в массив для других целей. «Вид» расширяет «JPanel», поэтому это обычная панель с поддержкой изображений. Приложение запускается с ячейкой, заполненной прокруткой, содержащей представление, в котором еще нет изображения.
В этот момент я не вижу полосы прокрутки, но это не имеет значения, поскольку внутри JPanel ничего нет. Как только я открываю изображение и использую drawImage в paintComponenet JPanel, я не вижу появления полосы прокрутки. Вот как я создаю сетку и панель прокрутки
private void createContentPane()
{
GridLayout gridLay = new GridLayout(GRID_ROWS, GRID_COLUMNS);
perspectiveTbl = new JScrollPane[NUM_PERSPECTIVE];
mainPane = new JPanel();
mainPane.setLayout(gridLay);
int idx = 0;
while(idx < perspectiveTbl.length)
{
perspectiveTbl[idx] = new JScrollPane(new View(modelImage));
mainPane.add(perspectiveTbl[idx]);
idx++;
}
this.getContentPane().add(mainPane, BorderLayout.CENTER);
}
Я не совсем уверен, почему полоса прокрутки не отображается, должны ли они быть установлены внутри панели для изображения?
Вот изображение приложения, как вы можете видеть, изображение обуви не получает полосу прокрутки, поэтому нет возможности просмотреть остальную часть изображения: