#javafx
#javafx
Вопрос:
Я хочу сделать высоту моего TextField
намного больше (оно должно занимать почти половину экрана). Я использую этот код:
concordText = new TextField("");
concordText.setPrefHeight(400);
concordText.setPrefWidth(80);
Это действительно увеличивает размер TextField
, но текст начинается с середины (как показано на рисунке). Как мне заставить его начинаться с начала текста?
Комментарии:
1. Вы говорите о
TextBox
илиTextField
?2. @Abra — Поскольку такого понятия, как a, не существует
TextBox
, а код показывает aTextField
, я думаю, можно с уверенностью предположить, на что они ссылаются 🙂3. @Zephyr, раньше было
TextBox
. Поскольку в OP не указано, какие версии JavaFX он использует, возможно, это 1.3 😉
Ответ №1:
Поскольку a TextField
предназначено только для одной строки текста, вы хотите использовать TextArea
вместо этого.
Для того, чтобы TextArea
расширить текстовое поле по вертикали, чтобы заполнить доступное пространство, оберните его в VBox
и соответствующим образом установите приоритет VGrow:
TextArea textArea = new TextArea();
VBox.setVgrow(textArea, Priority.ALWAYS);
Комментарии:
1. Большое вам спасибо! Это было именно то, что мне было нужно.