当前位置: 首页 > 知识库问答 >
问题:

在TextArea JavaFX中动态更改文本颜色

郜杰
2023-03-14

在我的项目中,我想实现一个语法突出显示功能。我的意思是,当用户在代码区键入代码时,文本将像IDE(Eclipse、Intellij、Netbeans)一样立即高亮显示。

例如,如果我们在IntellijJavaIDE中键入“import”,那么它会将单词“import”涂成蓝色。在我的项目中,我想实现同样的事情。

我的目标是用蓝色突出特定的关键词。例如,如果关键字是“mov”、“load”、“xor”等。那么它们应该用蓝色着色。我的项目基于JavaFX。

我使用TextArea作为代码编辑器。如何突出显示文本区域中的特定单词。TextArea是否更适合这样做?JavaFX中有类似EditorPane的东西吗。

提前感谢。

共有1个答案

韩朝斑
2023-03-14

这在JavaFXTextArea控件中是不可能的;它不包含设置文本范围样式的功能。

然而,还有其他选择。我对它没有任何经验,但RichTextFX似乎为语法高亮显示提供了一个基本框架,尽管大部分工作仍将由您自己完成。

还有FxEditor,但这仍处于非常早期的阶段。

除此之外,您还可以尝试在谷歌上搜索javafx语法突出显示文本区域的其他选项,看看是否运气更好。

否则,恐怕您需要从头开始编写自己的代码

 类似资料:
  • 问题内容: 我的问题是:如何更改标签中的文本?标签在布局内,但似乎不起作用-也许我做对了。 这是我的代码: 这是Main Windows GUI,一个Qt-Designer提供: 这是接口的逻辑: 我想在用户登录到程序后更改标签。我要更改的标签是,我想将其替换为,它对应于QLineEdits之一。 更新 我进行了您告诉我要做的所有更改,该项目看起来看起来井井有条,但是现在我得到了以下输出: Typ

  • 问题内容: 我的应用程序具有深色背景,但是在iOS 7中状态栏变为透明的。所以我看不到任何东西,只有角落的绿色电池指示灯。如何将状态栏文本颜色更改为白色,就像在主屏幕上一样? 问题答案: 将要在文件的.plist。 在做一个 添加以下方法: { return UIStatusBarStyleLightContent; } 注意 :这不适用于内部控制器,请参阅下面的Tyson评论:) Swift 3

  • 我正在用Java处理图形(特别是通过Swing和AWT libs),我想在屏幕上移动一个圆圈(生成线条),当线条到达画布边界时,将或坐标设置回0。我对这部分代码没有问题。 然而,现在我试图在坐标均为0时清除屏幕(使用)并更改颜色。屏幕清除工作正常,但我不能更改颜色。似乎,当坐标均为0时,在(0,0)位置的条纹下会出现指定颜色的椭圆形。然而,我希望条纹的颜色改变,直到坐标重置为(0,0)。 这是我的

  • 问题内容: 我在中创建两个对象,然后执行以下操作。 运行代码时,我可以看到两个矩形(一个在Aqua中,一个在黑色中),当我单击按钮时,我必须等待2秒钟才能查看两个矩形的颜色变化。 我先更改一个矩形的颜色,然后再更改下一个矩形的颜色。 我的问题是为什么我应该等待2秒?有没有一种方法可以动态更新矩形的颜色? 问题答案: 您正在UI线程上睡眠,该线程会阻止任何进一步的处理(包括刷新屏幕)。 如果需要延迟

  • 我正在使用RangeSeekBar为3种情况设置一些值(即绿色=OK,琥珀色=警告,红色=撤离)...我正在使用xml绘图来设置背景 我知道我可以通过编程更改渐变,但如何缩小起始颜色并增加结束颜色?有人能解决这个问题吗? 谢谢

  • 我正在尝试根据行标准更改背景行颜色。我离得很近,但有些事情我不能完全理解。(我相信这是因为我从底层列表中提取对象,而不是动态地获取数据。我标记了下面代码的这一部分) 在下面的示例中,每一行颜色都基于一个具有成功或失败值的对象(MyObj)。如果myObj有一个成功值,行应该是绿色的。如果myObj有一个失败值,那么行应该是红色的。如果myObj没有值,则应使用默认行颜色。