Как добавить вертикальную полосу прокрутки для JTextArea в Swing?
У меня есть этот класс Gui:
public class Gui extends JFrame implements ActionListener {
/**
*
*/
private static final long serialVersionUID = -384241835772507459L;
JLabel playerInfo;
JTextField textField;
private final static String newline = "\n";
JTextArea feed;
JScrollPane scrollPane;
Player player;
public Gui() {
super("Erik's RPG");
setLayout(new FlowLayout());
textField = new JTextField(30);
textField.addActionListener(this);
feed = new JTextArea(15, 30);
feed.setEditable(false);
}
public void setCurrentPlayer(Player currentPlayer) {
player = currentPlayer;
playerInfo = new JLabel("Health = " + currentPlayer.getHealth() + " | Mana = " + player.getMana());
playerInfo.setBorder(BorderFactory.createTitledBorder(currentPlayer.getName()));
add(playerInfo);
add(feed);
add(textField);
}
И это раздражает, когда куча текста находится в текстовом поле, потому что оно продолжает увеличивать окно. Мне нужно знать, как сделать полосу прокрутки, чтобы пользователю не приходилось постоянно изменять размеры своего JFrame. Кроме того, как я могу заблокировать размеры JFrame, чтобы пользователи могли присоединять размер?
1 ответ
Решение
Установить JTextArea
Экземпляр в виде окна просмотра JScrollPane
Экземпляр, как показано в разделе Как использовать панели прокрутки. Добавьте эту панель прокрутки на панель содержимого фрейма.