динамически изменять цвет текста в TextArea JavaFX - PullRequest
0 голосов
/ 05 июня 2018

В моем проекте я хочу реализовать функцию подсветки синтаксиса.Под этим я подразумеваю, что когда пользователь вводит код в области кода, текст будет сразу выделен, как IDE (Eclipse, Intellij, Netbeans).

Например, если мы введем «import» в IntelliJ Java IDE, тослово «импорт» будет окрашено в синий цвет.В моем проекте я хочу реализовать то же самое.

Моя цель - выделить конкретное ключевое слово синим цветом.Например, если ключевыми словами являются «mov», «load», «xor» и т. Д., То они должны быть окрашены в синий цвет.Мой проект основан на JavaFX.

Я использовал TextArea для Code-Editor.Как я могу выделить конкретные слова в TextArea.TextArea лучше для этого или нет?Есть ли в JavaFX что-то похожее на EditorPane.

Заранее спасибо.

1 Ответ

0 голосов
/ 10 июня 2018

Это невозможно с элементом управления JavaFX TextArea;он не содержит функциональности для стилизации диапазонов текста.

Однако есть и другие варианты.У меня нет никакого опыта с этим, но RichTextFX , кажется, обеспечивает базовую структуру для подсветки синтаксиса, хотя большая часть работы все еще будет сделана вами.

Существует также FxEditor , но он все еще находится на очень ранних стадиях.

Кроме этих, вы можете попробовать поискать в Google другие варианты для Подсветка синтаксиса javafx textarea и посмотрите, повезет ли вам больше.

В противном случае, боюсь, вам нужно будет написать свой код с нуля.

...