Я загрузил локальный файл HTML в веб-движок. мне нужно найти и выделить данную строку на странице веб-просмотра.
Есть ли способ сделать это?
искать и выделять текст в веб-просмотре в javafx
comment
Привет, ты узнал, как это сделать? Я тоже застрял в этом ...
- person SharonBL   schedule 17.10.2013
comment
Отметьте это вон :)
- person Muten Roshi   schedule 24.10.2014
comment
Вам нужно написать код Javascript, который вы можете вызывать через Java с помощью Nashorn Api.
- person Marcel   schedule 11.06.2015
comment
Возможный дубликат JavaFx | Поиск и выделение текста | Добавить панель поиска для загруженной веб-страницы
- person Michael Mrozek   schedule 20.04.2016
Ответы (1)
Если вы не против использования отражения, это можно сделать изначально в коде Java.
WebEngine имеет частную страницу поля типа WebPage, который, в свою очередь, имеет этот метод, который делает именно то, что вы хотите:
// Find in page
public boolean find(String stringToFind, boolean forward, boolean wrap, boolean matchCase) {
// ...
}
Итак, чтобы получить доступ к этому методу find (), вам нужно сделать:
WebView webView = new WebView();
WebEngine engine = webView.getEngine();
try {
Field pageField = engine.getClass().getDeclaredField("page");
pageField.setAccessible(true);
WebPage page = (com.sun.webkit.WebPage) pageField.get(engine);
page.find("query", true, true, false);
} catch(Exception e) { /* log error could not access page */ }
person
dankito
schedule
18.03.2018