在 HTMLEditor JavaFx 中突出显示文本

Highlight text in HTMLEditor JavaFx

你好,我正在尝试制作一个搜索系统,它的工作原理如下:

  1. 你按下 ctrl + f
  2. 出现文字对话
  3. 您输入的文本对话框中的文本将在 HTMLEditor 中突出显示

所以我在执行第三步时遇到了问题,我找不到任何关于突出显示的方法,也找不到关于 HTMLEditor 的 google 的任何内容。

所以我的问题是,是否可以在 HTMLEditor 中突出显示文本?如果可以,怎么做?

可能的方法

WebView 中有一个关于搜索和突出显示功能的类似问题:

  • JavaFx | Search and Highlight text | Add Search Bar for loaded web page

也许您可以使用该方法的调整(我相信 HTMLEditor 在内部实现为 WebView,尽管我可能是错的)。

您也许可以使用某些 techniques for customizing the existing HTMLEditor 获得 UI 控件,用于在 HTML 编辑器的工具栏中执行搜索。

备选方案

除了使用 HTMLEditor,您还可以使用:

  • 一个WebView with ContentEditable.
  • 一个native JavaFX rich text editor.
  • 一个 markdown 编辑器(如果你 google JavaFX markdown,有原生的 JavaFX 解决方案)。
  • WebView 运行基于嵌入式第三方 JavaScript 的 HTML 编辑器,其中包括搜索和替换功能(其中有很多,您可以 运行 google 搜索以评估备选方案)。

如果是我,我可能会选择 Markdown 编辑器方法(如果该编辑器是针对半技术性受众的)或第三方 JavaScript WebView 编辑器(如果受众是非技术性且需要的)带功能区的所见即所得 HTML 编辑器。

如果您不介意使用反射,可以在 Java 代码中原生完成。

在这里查看我的回答:。