JTextArea recipes = new JTextArea(allRecipes());
Мы не знаем, что делает allRecipes()
, но я предполагаю, что он устанавливает текст текстовой области.
Вместо этого вы должны определить текстовую область с помощью строк / столбцов, которые вы используете. sh. Что-то вроде:
JTextArea recipes = new JTextArea(5, 30);
, тогда в конструкторе вы должны добавить текст:
recipes.setText( allRecipes() );
Вы НЕ должны пытаться установить предпочтительный размер панели прокрутки. Предпочтительный размер будет автоматически определяться из предпочтительного размера текстовой области, который рассчитывается на основе строк / столбцов, предоставленных в конструкторе.
//scroll.setPreferredSize(new Dimension(10,15));
Кроме того, предпочтительный размер компонента указывается в пикселях , к приведенному выше не имеет смысла.
pane2.add(scroll, BorderLayout.CENTER);
Диспетчером компоновки по умолчанию для JPanel является FlowLayout. Таким образом, вы не можете просто использовать ограничение BorderLayout при добавлении компонента.