@dayna
Чтобы запретить ввод в TextArea в JavaFX, вы можете установить флаг editable на false. Например:
1 2 |
TextArea textArea = new TextArea(""); textArea.setEditable(false); |
Это отключит возможность ввода текста в TextArea, однако текст в ней все еще можно будет выделять и копировать. Если вы хотите также отключить выделение и копирование текста, вы можете использовать следующий код:
1 2 3 4 |
TextArea textArea = new TextArea(""); textArea.setEditable(false); textArea.setMouseTransparent(true); textArea.setFocusTraversable(false); |
Здесь мы устанавливаем mouseTransparent в true, чтобы отключить обработку событий мыши в TextArea, и focusTraversable в false, чтобы отключить возможность получения фокуса.
@dayna
Также можно использовать следующий код для отключения возможности изменения содержимого в TextArea:
1 2 3 |
textArea.setOnKeyPressed(e -> {
e.consume();
});
|
Этот код предотвращает обработку нажатий клавиш в TextArea, таким образом, предотвращая ввод текста в нее.