Spec-Zone.ru › OpenJavaFX 21

Класс WebEngine

java.lang.Object
fx.scene.web.WebEngine
public final class WebEngine extends Object
WebEngine — это невизуальный объект, способный управлять одной веб-страницей за раз. Он загружает веб-страницы, создаёт их модели документов, применяет стили по мере необходимости и выполняет JavaScript на страницах. Он предоставляет доступ к модели документа текущей страницы и позволяет осуществлять двустороннее общение между Java-приложением и JavaScript-кодом страницы.

Загрузка веб-страниц

Класс WebEngine предоставляет два способа загрузки содержимого в объект WebEngine:

  • Из произвольного URL-адреса с помощью метода load(java.lang.String). Этот метод использует пакет java.net для доступа к сети и обработки протоколов.
  • Из строковой переменной в оперативной памяти с помощью методов loadContent(java.lang.String, java.lang.String) и loadContent(java.lang.String).

Загрузка всегда происходит в фоновом потоке. Методы, запускающие загрузку, возвращают значение сразу после планирования фоновой задачи. Для отслеживания прогресса и/или отмены задачи используйте экземпляр Worker, доступный через метод getLoadWorker().

Следующий пример изменяет заголовок окна при успешной загрузке:


    import javafx.concurrent.Worker.State;
    final Stage stage;
    webEngine.getLoadWorker().stateProperty().addListener(
        new ChangeListener<State>() {
            public void changed(ObservableValue ov, State oldState, State newState) {
                if (newState == State.SUCCEEDED) {
                    stage.setTitle(webEngine.getLocation());
                }
            }
        });
    webEngine.load("http://javafx.com");
 

Обработка событий пользовательского интерфейса

Несколько обработчиков событий пользовательского интерфейса могут быть зарегистрированы с объектом WebEngine. Эти обработчики вызываются, когда скрипт, выполняющийся на странице, запрашивает выполнение операции пользовательского интерфейса, например, открытие всплывающего окна или изменение текста состояния. Объект WebEngine не может обрабатывать такие запросы внутри себя, поэтому он передает запрос соответствующим обработчикам. Если для конкретной операции не определен обработчик, запрос будет проигнорирован.

В таблице ниже показаны методы и свойства JavaScript пользовательского интерфейса с соответствующими обработчиками WebEngine:

Таблица обратных вызовов JavaScript
Метод/свойство JavaScript Обработчик WebEngine
window.alert() onAlert
window.confirm() confirmHandler
window.open() createPopupHandler
window.open() и
window.close()
onVisibilityChanged
window.prompt() promptHandler
Установление window.status onStatusChanged
Установление любого из следующих:
window.innerWidth, window.innerHeight,
window.outerWidth, window.outerHeight,
window.screenX, window.screenY,
window.screenLeft, window.screenTop
onResized

Следующий пример демонстрирует обработчик, изменяющий размер окна браузера:


    Stage stage;
    webEngine.setOnResized(
        new EventHandler<WebEvent<Rectangle2D>>() {
            public void handle(WebEvent<Rectangle2D> ev) {
                Rectangle2D r = ev.getData();
                stage.setWidth(r.getWidth());
                stage.setHeight(r.getHeight());
            }
        });
 

Доступ к модели документа

Объекты WebEngine создают и управляют моделью документа (DOM) для своих веб-страниц. Модель можно получить и изменить, используя классы Java DOM Core. Метод getDocument() обеспечивает доступ к корню модели. Кроме того, поддерживается спецификация DOM Event для определения обработчиков событий в коде Java.

Следующий пример прикрепляет обработчик событий Java к элементу веб-страницы. Нажатие на элемент приводит к закрытию приложения:


    EventListener listener = new EventListener() {
        public void handleEvent(Event ev) {
            Platform.exit();
        }
    };

    Document doc = webEngine.getDocument();
    Element el = doc.getElementById("exit-app");
    ((EventTarget) el).addEventListener("click", listener, false);
 

Вычисление JavaScript-выражений

Возможна выполнение произвольного JavaScript-кода в контексте текущей страницы с помощью метода executeScript(java.lang.String). Например:


    webEngine.executeScript("history.back()");
 

Результат выполнения возвращается вызывающему коду, как описано в следующем разделе.

Сопоставление значений JavaScript с объектами Java

Значения JavaScript представлены очевидными классами Java: null становится Java null; boolean становится Java boolean; а строка становится Java String. Число может быть Java int или Java double в зависимости от случая. Значение undefined соответствует определённому уникальному объекту String со значением "undefined".

Если результатом является JavaScript-объект, он оборачивается в экземпляр класса JSObject. (В качестве исключения, если JavaScript-объект является JavaRuntimeObject, как обсуждается в следующем разделе, то вместо него извлекается исходный объект Java.) Класс JSObject — это прокси, предоставляющий доступ к методам и свойствам его базового JavaScript-объекта. Наиболее часто используемые методы JSObject — getMember (для чтения имени свойства), setMember (для установки или определения свойства) и call (для вызова функции-свойства).

Объект DOM Node сопоставляется с объектом, который расширяет JSObject и реализует соответствующие интерфейсы DOM. Для получения объекта JSObject для Node просто выполните приведение типов:

 JSObject jdoc = (JSObject) webEngine.getDocument();
 

В некоторых случаях контекст предоставляет конкретный тип Java, который направляет преобразование. Например, при установке поля Java String из JavaScript-выражения, значение JavaScript преобразуется в строку.

Сопоставление объектов Java со значениями JavaScript

Аргументы методов JSObject setMember и call передают объекты Java в среду JavaScript. Это примерно обратное сопоставлению JavaScript-Java, описанному выше: объекты Java String, Number или Boolean преобразуются в очевидные значения JavaScript. Объект JSObject преобразуется в исходный оборачиваемый объект JavaScript. В противном случае создается JavaRuntimeObject. Это объект JavaScript, который действует как прокси для объекта Java, в том смысле, что доступ к свойствам JavaRuntimeObject вызывает доступ к полю или методу Java с тем же именем.

Обратите внимание, что объекты Java, привязанные с помощью JSObject.setMember, JSObject.setSlot и JSObject.call, реализованы с использованием слабых ссылок. Это означает, что объект Java может быть собран сборщиком мусора, что приводит к отсутствию эффекта последующих обращений к объектам JavaScript.

Возврат в Java из JavaScript

Метод JSObject.setMember полезен для организации вызовов из JavaScript в Java-код, как показано в следующем примере. Java-код создает новый JavaScript-объект под именем app. Этот объект имеет один публичный член, метод exit.


public class JavaApplication {
    public void exit() {
        Platform.exit();
    }
}
...
JavaApplication javaApp = new JavaApplication();
JSObject window = (JSObject) webEngine.executeScript("window");
window.setMember("app", javaApp);
 
Вы затем можете ссылаться на объект и метод со своей веб-страницы:

    <a href="" onclick="app.exit()">Click here to exit application</a>
 

При нажатии на ссылку приложение закрывается.

Обратите внимание, что в приведенном примере приложение сохраняет ссылку на экземпляр JavaApplication. Это необходимо для выполнения обратного вызова из JavaScript, чтобы вызвать нужный метод.

В следующем примере приложение не сохраняет ссылку на объект Java:


 JSObject window = (JSObject) webEngine.executeScript("window");
 window.setMember("app", new JavaApplication());
 

В этом случае, поскольку значение свойства является локальным объектом, "new JavaApplication()", значение может быть собрано сборщиком мусора в следующий цикл сборки мусора.

При нажатии пользователем на ссылку нет гарантии, что будет вызван метод обратного вызова exit.

Если существует несколько Java-методов с заданным именем, движок выбирает один, соответствующий количеству параметров в вызове. (Многоаргументные методы не обрабатываются.) Неопределенный метод выбирается, если существует несколько методов с правильным числом параметров.

Вы можете выбрать определенный перегруженный метод, указав типы параметров в "расширенном имени метода", имеющем вид "method_name(param_type1,...,param_typen)". Обычно вы напишете JavaScript-выражение:

 receiver["method_name(param_type1,...,param_typeN)"](arg1,...,argN)
 

Класс Java и метод должны быть объявлены публичными.

Развертывание приложения как модуля

Если какой-либо Java-класс, переданный в JavaScript, находится в именованном модуле, он должен быть доступен для рефлективного использования модулем javafx.web. Класс доступен рефлективно, если модуль opens содержащий пакет, по крайней мере, модулю javafx.web. В противном случае метод не будет вызван, и ошибки или предупреждения не будут сгенерированы.

Например, если com.foo.MyClass находится в модуле foo.app, module-info.java может выглядеть так:

module foo.app {
    opens com.foo to javafx.web;
}

В качестве альтернативы, класс доступен рефлективно, если модуль exports содержащий пакет безусловно.

Начиная с JavaFX 14, поддержка HTTP/2 была добавлена в WebEngine. Это достигается с помощью HttpClient вместо URLConnection. HTTP/2 активируется по умолчанию при использовании JavaFX 14 (или более поздней версии) с JDK 12 (или более поздней версии).

Потоки

WebEngine объекты должны создаваться и использоваться только из потока приложения JavaFX. Это правило также относится к любым объектам DOM и JavaScript, полученным из объекта WebEngine.

Since:
JavaFX 2.0

Краткое описание свойств

Тип Свойство Описание
final ObjectProperty<Callback<String,Boolean>> confirmHandler
Свойство обработчика JavaScript confirm.
final ObjectProperty<Callback<PopupFeatures,WebEngine>> createPopupHandler
Свойство обработчика всплывающих окон JavaScript.
final ReadOnlyObjectProperty<Document> document
Объект документа текущей веб-страницы.
final BooleanProperty javaScriptEnabled
Указывает, включена ли обработка JavaScript.
final ReadOnlyStringProperty location
URL текущей веб-страницы.
final ObjectProperty<EventHandler<WebEvent<String>>> onAlert
Свойство обработчика JavaScript alert.
final ObjectProperty<EventHandler<WebErrorEvent>> onError
Обработчик событий, вызываемый при возникновении ошибки.
final ObjectProperty<EventHandler<WebEvent<Rectangle2D>>> onResized
Свойство обработчика изменения размера окна JavaScript.
final ObjectProperty<EventHandler<WebEvent<String>>> onStatusChanged
Свойство обработчика статуса JavaScript.
final ObjectProperty<EventHandler<WebEvent<Boolean>>> onVisibilityChanged
Свойство обработчика видимости окна JavaScript.
final ObjectProperty<Callback<PromptData,String>> promptHandler
Свойство обработчика JavaScript prompt.
final ReadOnlyStringProperty title
Заголовок текущей веб-страницы.
final StringProperty userAgent
Строка идентификатора пользователя агента.
final ObjectProperty<File> userDataDirectory
Указывает каталог, который будет использоваться этим WebEngine для хранения локальных данных пользователя.
final StringProperty userStyleSheetLocation
Расположение пользовательского стильного файла как строка URL.

Краткое описание конструкторов

Конструктор Описание
WebEngine()
Создает новый движок.
WebEngine(String url)
Создает новый движок и загружает веб-страницу в него.

Краткое описание методов

Modifier and Type Method Description
final ObjectProperty<Callback<String,Boolean>> confirmHandlerProperty()
Свойство обработчика JavaScript confirm.
final ObjectProperty<Callback<PopupFeatures,WebEngine>> createPopupHandlerProperty()
Свойство обработчика всплывающего окна JavaScript.
final ReadOnlyObjectProperty<Document> documentProperty()
Объект документа текущей веб-страницы.
Object executeScript(String script)
Выполняет скрипт в контексте текущей страницы.
final Callback<String,Boolean> getConfirmHandler()
Получает значение свойства confirmHandler.
final Callback<PopupFeatures,WebEngine> getCreatePopupHandler()
Получает значение свойства createPopupHandler.
final Document getDocument()
Получает значение свойства document.
WebHistory getHistory()
Возвращает объект истории сеанса.
final Worker<Void> getLoadWorker()
Возвращает объект Worker, который можно использовать для отслеживания прогресса загрузки.
final String getLocation()
Получает значение свойства location.
final EventHandler<WebEvent<String>> getOnAlert()
Получает значение свойства onAlert.
final EventHandler<WebErrorEvent> getOnError()
Получает значение свойства onError.
final EventHandler<WebEvent<Rectangle2D>> getOnResized()
Получает значение свойства onResized.
final EventHandler<WebEvent<String>> getOnStatusChanged()
Получает значение свойства onStatusChanged.
final EventHandler<WebEvent<Boolean>> getOnVisibilityChanged()
Получает значение свойства onVisibilityChanged.
final Callback<PromptData,String> getPromptHandler()
Получает значение свойства promptHandler.
final String getTitle()
Получает значение свойства title.
final String getUserAgent()
Получает значение свойства userAgent.
final File getUserDataDirectory()
Получает значение свойства userDataDirectory.
final String getUserStyleSheetLocation()
Получает значение свойства userStyleSheetLocation.
final boolean isJavaScriptEnabled()
Получает значение свойства javaScriptEnabled.
final BooleanProperty javaScriptEnabledProperty()
Указывает, разрешено ли выполнение JavaScript.
void load(String url)
Загружает веб-страницу в этот движок.
void loadContent(String content)
Загружает заданное содержимое HTML напрямую.
void loadContent(String content, String contentType)
Загружает заданное содержимое напрямую.
final ReadOnlyStringProperty locationProperty()
URL текущей веб-страницы.
final ObjectProperty<EventHandler<WebEvent<String>>> onAlertProperty()
Свойство обработчика JavaScript alert.
final ObjectProperty<EventHandler<WebErrorEvent>> onErrorProperty()
Обработчик событий, вызываемый при возникновении ошибки.
final ObjectProperty<EventHandler<WebEvent<Rectangle2D>>> onResizedProperty()
Свойство обработчика изменения размера окна JavaScript.
final ObjectProperty<EventHandler<WebEvent<String>>> onStatusChangedProperty()
Свойство обработчика состояния JavaScript.
final ObjectProperty<EventHandler<WebEvent<Boolean>>> onVisibilityChangedProperty()
Свойство обработчика видимости окна JavaScript.
void print(PrinterJob job)
Печатает текущую веб-страницу с помощью заданного задания печати.
final ObjectProperty<Callback<PromptData,String>> promptHandlerProperty()
Свойство обработчика JavaScript prompt.
void reload()
Перезагружает текущую страницу, загруженную как из URL, так и напрямую из строки в одном из методов loadContent.
final void setConfirmHandler(Callback<String,Boolean> handler)
Устанавливает значение свойства confirmHandler.
final void setCreatePopupHandler(Callback<PopupFeatures,WebEngine> handler)
Устанавливает значение свойства createPopupHandler.
final void setJavaScriptEnabled(boolean value)
Устанавливает значение свойства javaScriptEnabled.
final void setOnAlert(EventHandler<WebEvent<String>> handler)
Устанавливает значение свойства onAlert.
final void setOnError(EventHandler<WebErrorEvent> handler)
Устанавливает значение свойства onError.
final void setOnResized(EventHandler<WebEvent<Rectangle2D>> handler)
Устанавливает значение свойства onResized.
final void setOnStatusChanged(EventHandler<WebEvent<String>> handler)
Устанавливает значение свойства onStatusChanged.
final void setOnVisibilityChanged(EventHandler<WebEvent<Boolean>> handler)
Устанавливает значение свойства onVisibilityChanged.
final void setPromptHandler(Callback<PromptData,String> handler)
Устанавливает значение свойства promptHandler.
final void setUserAgent(String value)
Устанавливает значение свойства userAgent.
final void setUserDataDirectory(File value)
Устанавливает значение свойства userDataDirectory.
final void setUserStyleSheetLocation(String value)
Устанавливает значение свойства userStyleSheetLocation.
final ReadOnlyStringProperty titleProperty()
Заголовок текущей веб-страницы.
final StringProperty userAgentProperty()
Указывает строку идентификатора пользователя агента.
final ObjectProperty<File> userDataDirectoryProperty()
Указывает директорию, которую этот WebEngine будет использовать для хранения локальных данных пользователя.
final StringProperty userStyleSheetLocationProperty()
Расположение пользовательского стиля как строковый URL.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание свойств

document

public final ReadOnlyObjectProperty<Document> documentProperty
Объект документа текущей веб-страницы. Значение равно null, если загрузка веб-страницы завершилась ошибкой.
См. также:
  • getDocument()
  • documentProperty()

location

public final ReadOnlyStringProperty locationProperty
URL текущей веб-страницы. Если у текущей страницы нет URL, значение — пустая строка.
См. также:
  • getLocation()
  • locationProperty()

title

public final ReadOnlyStringProperty titleProperty
Заголовок текущей веб-страницы. Если у текущей страницы нет заголовка, значение равно null. Это свойство обновляется асинхронно некоторое время после загрузки страницы. Приложения не должны полагаться на конкретное время, но должны прослушивать изменения этого свойства или привязываться к нему, чтобы знать, когда оно было обновлено.
См. также:
  • getTitle()
  • titleProperty()

javaScriptEnabled

public final BooleanProperty javaScriptEnabledProperty
Указывает, включено ли выполнение JavaScript.
Значение по умолчанию:
true
С версии:
JavaFX 2.2
См. также:
  • isJavaScriptEnabled()
  • setJavaScriptEnabled(boolean)
  • javaScriptEnabledProperty()

userStyleSheetLocation

public final StringProperty userStyleSheetLocationProperty
Расположение пользовательского стили файла в виде строкового URL.

Это должен быть локальный URL, т.е. либо 'data:', либо 'file:', либо 'jar:', либо 'jrt:'. Из соображений безопасности удалённые URL не допускаются.

Значение по умолчанию:
null
С версии:
JavaFX 2.2
См. также:
  • getUserStyleSheetLocation()
  • setUserStyleSheetLocation(String)
  • userStyleSheetLocationProperty()

userDataDirectory

public final ObjectProperty<File> userDataDirectoryProperty
Указывает каталог, используемый данным WebEngine для хранения локальных данных пользователя.

Если значение этого свойства не равно null, то WebEngine попытается сохранить локальные данные пользователя в соответствующем каталоге. Если значение этого свойства равно null, то WebEngine попытается сохранить локальные данные пользователя в автоматически выбранном каталоге, зависящем от системы и прикладной специфике.

Когда WebEngine собирается начать загрузку веб-страницы или выполнение скрипта в первый раз, он проверяет, может ли он фактически использовать каталог, указанный этим свойством. Если проверка завершится неудачей по какой-либо причине, WebEngine вызывает обработчик события WebEngine.onError, если таковой существует, с объектом WebErrorEvent, описывающим причину. Если вызванный обработчик изменяет свойство userDataDirectory, WebEngine повторяет попытку с новым значением, как только обработчик вернёт результат. Если обработчик не изменяет свойство userDataDirectory (что является значением по умолчанию), WebEngine продолжает работу без локальных данных пользователя.

После того, как WebEngine начал загрузку веб-страницы или выполнение скрипта, внесенные изменения в это свойство не повлияют на то, где WebEngine сохраняет или будет сохранять локальные данные пользователя.

В настоящее время каталог, указанный этим свойством, используется только для хранения данных, которые поддерживают объекты window.localStorage. В будущем могут быть добавлены и другие типы данных.

Значение по умолчанию:
null
С версии:
JavaFX 8.0
См. также:
  • getUserDataDirectory()
  • setUserDataDirectory(File)
  • userDataDirectoryProperty()

userAgent

public final StringProperty userAgentProperty
Указывает строку идентификатора user agent. Эта строка — значение заголовка HTTP User-Agent.
Значение по умолчанию:
зависит от системы
С версии:
JavaFX 8.0
См. также:
  • getUserAgent()
  • setUserAgent(String)
  • userAgentProperty()

onAlert

public final ObjectProperty<EventHandler<WebEvent<String>>> onAlertProperty
Свойство обработчика JavaScript alert. Этот обработчик вызывается, когда выполняемый на веб-странице скрипт вызывает функцию alert.
См. также:
  • getOnAlert()
  • setOnAlert(EventHandler)
  • onAlertProperty()

onStatusChanged

public final ObjectProperty<EventHandler<WebEvent<String>>> onStatusChangedProperty
Свойство обработчика статуса JavaScript. Этот обработчик вызывается, когда выполняемый на веб-странице скрипт устанавливает свойство window.status.
См. также:
  • getOnStatusChanged()
  • setOnStatusChanged(EventHandler)
  • onStatusChangedProperty()

onResized

public final ObjectProperty<EventHandler<WebEvent<Rectangle2D>>> onResizedProperty
Свойство обработчика изменения размера окна JavaScript. Этот обработчик вызывается, когда выполняемый на веб-странице скрипт перемещает или изменяет размер объекта window.
См. также:
  • getOnResized()
  • setOnResized(EventHandler)
  • onResizedProperty()

onVisibilityChanged

public final ObjectProperty<EventHandler<WebEvent<Boolean>>> onVisibilityChangedProperty
Свойство обработчика видимости окна JavaScript. Этот обработчик вызывается, когда выполняемый на веб-странице скрипт изменяет видимость объекта window.
См. также:
  • getOnVisibilityChanged()
  • setOnVisibilityChanged(EventHandler)
  • onVisibilityChangedProperty()

createPopupHandler

public final ObjectProperty<Callback<PopupFeatures,WebEngine>> createPopupHandlerProperty
Свойство обработчика всплывающего окна JavaScript. Этот обработчик вызывается, когда выполняемый на веб-странице скрипт запрашивает создание всплывающего окна.

Для обработки этого запроса обработчик может создать новое WebEngine, добавить обработчик видимости и, необязательно, обработчик изменения размера, и вернуть созданный движок. Чтобы заблокировать всплывающее окно, обработчик должен вернуть null.

По умолчанию установлен обработчик всплывающих окон, который открывает всплывающие окна в этом WebEngine.

См. также:
  • getCreatePopupHandler()
  • setCreatePopupHandler(Callback)
  • createPopupHandlerProperty()

confirmHandler

public final ObjectProperty<Callback<String,Boolean>> confirmHandlerProperty
Свойство обработчика подтверждения JavaScript. Этот обработчик вызывается, когда выполняемый на веб-странице скрипт вызывает функцию confirm.

Реализация может отобразить диалоговое окно с опциями «Да» и «Нет» и вернуть выбор пользователя.

См. также:
  • getConfirmHandler()
  • setConfirmHandler(Callback)
  • confirmHandlerProperty()

promptHandler

public final ObjectProperty<Callback<PromptData,String>> promptHandlerProperty
Свойство обработчика запроса JavaScript. Этот обработчик вызывается, когда выполняемый на веб-странице скрипт вызывает функцию prompt.

Реализация может отобразить диалоговое окно с текстовым полем и вернуть введенные пользователем данные.

См. также:
  • getPromptHandler()
  • setPromptHandler(Callback)
  • promptHandlerProperty()

onError

public final ObjectProperty<EventHandler<WebErrorEvent>> onErrorProperty
Обработчик событий, вызываемый при возникновении ошибки.
Значение по умолчанию:
null
С версии:
JavaFX 8.0
См. также:
  • getOnError()
  • setOnError(EventHandler)
  • onErrorProperty()

Подробное описание конструкторов

WebEngine

public WebEngine()
Создаёт новый движок.

WebEngine

public WebEngine(String url)
Создаёт новый движок и загружает веб-страницу в него.
Параметры:
url - URL веб-страницы для загрузки

Подробное описание методов

getLoadWorker

public final Worker<Void> getLoadWorker()
Возвращает объект Worker, который можно использовать для отслеживания прогресса загрузки.
Возвращает:
объект Worker

getDocument

public final Document getDocument()
Получает значение свойства document.
Описание свойства:
Объект документа текущей веб-страницы. Значение равно null, если загрузка веб-страницы завершилась ошибкой.
Возвращает:
значение свойства document
См. также:
  • documentProperty()

documentProperty

public final ReadOnlyObjectProperty<Document> documentProperty()
Объект документа текущей веб-страницы. Значение равно null, если загрузка веб-страницы завершилась ошибкой.
Возвращает:
свойство документа
См. также:
  • getDocument()

getLocation

public final String getLocation()
Получает значение свойства location.
Описание свойства:
URL текущей веб-страницы. Если у текущей страницы нет URL, значение равно пустой строке.
Возвращает:
значение свойства location
См. также:
  • locationProperty()

locationProperty

public final ReadOnlyStringProperty locationProperty()
URL текущей веб-страницы. Если у текущей страницы нет URL, значение равно пустой строке.
Возвращает:
свойство расположения
См. также:
  • getLocation()

getTitle

public final String getTitle()
Получает значение свойства title.
Описание свойства:
Заголовок текущей веб-страницы. Если у текущей страницы нет заголовка, значение равно null. Это свойство будет обновлено асинхронно некоторое время после загрузки страницы. Приложения не должны полагаться на определённое время, а должны слушать изменения этого свойства или привязываться к нему, чтобы узнать, когда оно было обновлено.
Возвращает:
значение свойства title
См. также:
  • titleProperty()

titleProperty

public final ReadOnlyStringProperty titleProperty()
Заголовок текущей веб-страницы. Если у текущей страницы нет заголовка, значение равно null. Это свойство будет обновлено асинхронно некоторое время после загрузки страницы. Приложения не должны полагаться на определённое время, а должны слушать изменения этого свойства или привязываться к нему, чтобы узнать, когда оно было обновлено.
Возвращает:
свойство заголовка
См. также:
  • getTitle()

setJavaScriptEnabled

public final void setJavaScriptEnabled(boolean value)
Устанавливает значение свойства javaScriptEnabled.
Описание свойства:
Указывает, разрешена ли работа JavaScript.
Значение по умолчанию:
true
Параметры:
value - значение для свойства javaScriptEnabled
С:
JavaFX 2.2
См. также:
  • isJavaScriptEnabled()
  • javaScriptEnabledProperty()

isJavaScriptEnabled

public final boolean isJavaScriptEnabled()
Получает значение свойства javaScriptEnabled.
Описание свойства:
Указывает, разрешена ли работа JavaScript.
Значение по умолчанию:
true
Возвращает:
значение свойства javaScriptEnabled
С:
JavaFX 2.2
См. также:
  • setJavaScriptEnabled(boolean)
  • javaScriptEnabledProperty()

javaScriptEnabledProperty

public final BooleanProperty javaScriptEnabledProperty()
Указывает, разрешена ли работа JavaScript.
Значение по умолчанию:
true
Возвращает:
свойство javaScriptEnabled
С:
JavaFX 2.2
См. также:
  • isJavaScriptEnabled()
  • setJavaScriptEnabled(boolean)

setUserStyleSheetLocation

public final void setUserStyleSheetLocation(String value)
Устанавливает значение свойства userStyleSheetLocation.
Описание свойства:
Расположение пользовательского таблицы стилей в виде строкового URL.

Это должен быть локальный URL, т.е. либо 'data:', либо 'file:', либо 'jar:', либо 'jrt:'. Дистанционные URL не допускаются по соображениям безопасности.

Значение по умолчанию:
null
Параметры:
value - значение для свойства userStyleSheetLocation
С:
JavaFX 2.2
См. также:
  • getUserStyleSheetLocation()
  • userStyleSheetLocationProperty()

getUserStyleSheetLocation

public final String getUserStyleSheetLocation()
Получает значение свойства userStyleSheetLocation.
Описание свойства:
Расположение пользовательского таблицы стилей в виде строкового URL.

Это должен быть локальный URL, т.е. либо 'data:', либо 'file:', либо 'jar:', либо 'jrt:'. Дистанционные URL не допускаются по соображениям безопасности.

Значение по умолчанию:
null
Возвращает:
значение свойства userStyleSheetLocation
С:
JavaFX 2.2
См. также:
  • setUserStyleSheetLocation(String)
  • userStyleSheetLocationProperty()

userStyleSheetLocationProperty

public final StringProperty userStyleSheetLocationProperty()
Расположение пользовательского таблицы стилей в виде строкового URL.

Это должен быть локальный URL, т.е. либо 'data:', либо 'file:', либо 'jar:', либо 'jrt:'. Дистанционные URL не допускаются по соображениям безопасности.

Значение по умолчанию:
null
Возвращает:
свойство userStyleSheetLocation
С:
JavaFX 2.2
См. также:
  • getUserStyleSheetLocation()
  • setUserStyleSheetLocation(String)

getUserDataDirectory

public final File getUserDataDirectory()
Получает значение свойства userDataDirectory.
Описание свойства:
Указывает каталог, который должен использоваться этим WebEngine для хранения локальных данных пользователя.

Если значение этого свойства не равно null, то WebEngine попытается сохранить локальные данные пользователя в соответствующем каталоге. Если значение этого свойства равно null, то WebEngine попытается сохранить локальные данные пользователя в автоматически выбранном каталоге, зависящем от системы, и специфичном для пользователя и приложения.

Когда WebEngine собирается начать загрузку веб-страницы или выполнить скрипт впервые, он проверяет, может ли он фактически использовать каталог, указанный этим свойством. Если проверка завершится неудачно по какой-либо причине, WebEngine вызывает обработчик события WebEngine.onError, если таковой имеется, с WebErrorEvent, описывающим причину. Если вызванный обработчик события изменяет свойство userDataDirectory, WebEngine повторяет попытку с новым значением, как только обработчик вернётся. Если обработчик не изменяет свойство userDataDirectory (что является значением по умолчанию), WebEngine продолжает работу без локальных данных пользователя.

После того, как WebEngine начал загрузку веб-страницы или выполнение скрипта, внесённые изменения в это свойство не влияют на то, где WebEngine хранит или будет хранить локальные данные пользователя.

В настоящее время каталог, указанный этим свойством, используется только для хранения данных, которые поддерживают объекты window.localStorage. В будущем могут быть добавлены другие типы данных.

Значение по умолчанию:
null
Возвращает:
значение свойства userDataDirectory
С:
JavaFX 8.0
См. также:
  • setUserDataDirectory(File)
  • userDataDirectoryProperty()

УстановитьДиректориюДанныхПользователя

public final void setUserDataDirectory(File value)
Устанавливает значение свойства userDataDirectory.
Описание свойства:
Указывает директорию, которую этот WebEngine будет использовать для хранения локальных данных пользователя.

Если значение этого свойства не null, то WebEngine будет пытаться хранить локальные данные пользователя в указанной директории. Если значение этого свойства равно null, то WebEngine будет пытаться хранить локальные данные пользователя в автоматически выбранной, зависящей от системы, директории, специфичной для пользователя и приложения.

Когда WebEngine собирается начать загрузку веб-страницы или выполнение скрипта в первый раз, он проверяет, может ли он фактически использовать директорию, указанную этим свойством. Если проверка по какой-либо причине завершается неудачно, WebEngine вызывает обработчик события WebEngine.onError, если таковой имеется, с объектом WebErrorEvent, описывающим причину. Если вызванный обработчик изменяет свойство userDataDirectory, то WebEngine повторно пытается выполнить операцию с новым значением, как только обработчик вернёт результат. Если обработчик не изменяет свойство userDataDirectory (что является значением по умолчанию), то WebEngine продолжает работу без локальных данных пользователя.

После того, как WebEngine начал загрузку веб-страницы или выполнение скрипта, изменения, внесённые в это свойство, не повлияют на то, где WebEngine хранит или будет хранить локальные данные пользователя.

В настоящее время директория, указанная этим свойством, используется только для хранения данных, которые поддерживают объекты window.localStorage. В будущем могут быть добавлены другие типы данных.

Значение по умолчанию:
null
Параметры:
value - значение для свойства userDataDirectory
С:
JavaFX 8.0
См. также:
  • getUserDataDirectory()
  • userDataDirectoryProperty()

СвойствоДиректорииДанныхПользователя

public final ObjectProperty<File> userDataDirectoryProperty()
Указывает директорию, которую этот WebEngine будет использовать для хранения локальных данных пользователя.

Если значение этого свойства не null, то WebEngine будет пытаться хранить локальные данные пользователя в указанной директории. Если значение этого свойства равно null, то WebEngine будет пытаться хранить локальные данные пользователя в автоматически выбранной, зависящей от системы, директории, специфичной для пользователя и приложения.

Когда WebEngine собирается начать загрузку веб-страницы или выполнение скрипта в первый раз, он проверяет, может ли он фактически использовать директорию, указанную этим свойством. Если проверка по какой-либо причине завершается неудачно, WebEngine вызывает обработчик события WebEngine.onError, если таковой имеется, с объектом WebErrorEvent, описывающим причину. Если вызванный обработчик изменяет свойство userDataDirectory, то WebEngine повторно пытается выполнить операцию с новым значением, как только обработчик вернёт результат. Если обработчик не изменяет свойство userDataDirectory (что является значением по умолчанию), то WebEngine продолжает работу без локальных данных пользователя.

После того, как WebEngine начал загрузку веб-страницы или выполнение скрипта, изменения, внесённые в это свойство, не повлияют на то, где WebEngine хранит или будет хранить локальные данные пользователя.

В настоящее время директория, указанная этим свойством, используется только для хранения данных, которые поддерживают объекты window.localStorage. В будущем могут быть добавлены другие типы данных.

Значение по умолчанию:
null
Возвращает:
свойство userDataDirectory
С:
JavaFX 8.0
См. также:
  • getUserDataDirectory()
  • setUserDataDirectory(File)

УстановитьUserAgent

public final void setUserAgent(String value)
Устанавливает значение свойства userAgent.
Описание свойства:
Строка идентификатора пользователя. Эта строка является значением заголовка User-Agent HTTP.
Значение по умолчанию:
зависит от системы
Параметры:
value - значение для свойства userAgent
С:
JavaFX 8.0
См. также:
  • getUserAgent()
  • userAgentProperty()

ПолучитьUserAgent

public final String getUserAgent()
Получает значение свойства userAgent.
Описание свойства:
Строка идентификатора пользователя. Эта строка является значением заголовка User-Agent HTTP.
Значение по умолчанию:
зависит от системы
Возвращает:
значение свойства userAgent
С:
JavaFX 8.0
См. также:
  • setUserAgent(String)
  • userAgentProperty()

СвойствоUserAgent

public final StringProperty userAgentProperty()
Строка идентификатора пользователя. Эта строка является значением заголовка User-Agent HTTP.
Значение по умолчанию:
зависит от системы
Возвращает:
свойство userAgent
С:
JavaFX 8.0
См. также:
  • getUserAgent()
  • setUserAgent(String)

ПолучитьНаОповещении

public final EventHandler<WebEvent<String>> getOnAlert()
Получает значение свойства onAlert.
Описание свойства:
Обработчик JavaScript alert. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, вызывает функцию alert.
Возвращает:
значение свойства onAlert
См. также:
  • setOnAlert(EventHandler)
  • onAlertProperty()

УстановитьНаОповещении

public final void setOnAlert(EventHandler<WebEvent<String>> handler)
Устанавливает значение свойства onAlert.
Описание свойства:
Обработчик JavaScript alert. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, вызывает функцию alert.
Параметры:
handler - значение для свойства onAlert
См. также:
  • getOnAlert()
  • onAlertProperty()

СвойствоНаОповещении

public final ObjectProperty<EventHandler<WebEvent<String>>> onAlertProperty()
Обработчик JavaScript alert. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, вызывает функцию alert.
Возвращает:
свойство наОповещении
См. также:
  • getOnAlert()
  • setOnAlert(EventHandler)

ПолучитьПриИзмененииСостояния

public final EventHandler<WebEvent<String>> getOnStatusChanged()
Получает значение свойства onStatusChanged.
Описание свойства:
Свойство обработчика состояния JavaScript. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, устанавливает свойство window.status.
Возвращает:
значение свойства onStatusChanged
См. также:
  • setOnStatusChanged(EventHandler)
  • onStatusChangedProperty()

УстановитьПриИзмененииСостояния

public final void setOnStatusChanged(EventHandler<WebEvent<String>> handler)
Устанавливает значение свойства onStatusChanged.
Описание свойства:
Свойство обработчика состояния JavaScript. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, устанавливает свойство window.status.
Параметры:
handler - значение для свойства onStatusChanged
См. также:
  • getOnStatusChanged()
  • onStatusChangedProperty()

СвойствоПриИзмененииСостояния

public final ObjectProperty<EventHandler<WebEvent<String>>> onStatusChangedProperty()
Свойство обработчика состояния JavaScript. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, устанавливает свойство window.status.
Возвращает:
свойство приИзмененииСостояния
См. также:
  • getOnStatusChanged()
  • setOnStatusChanged(EventHandler)

ПолучитьПриИзмененииРазмера

public final EventHandler<WebEvent<Rectangle2D>> getOnResized()
Получает значение свойства onResized.
Описание свойства:
Свойство обработчика изменения размера окна JavaScript. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, перемещает или изменяет размер объекта window.
Возвращает:
значение свойства onResized
См. также:
  • setOnResized(EventHandler)
  • onResizedProperty()

setOnResized

public final void setOnResized(EventHandler<WebEvent<Rectangle2D>> handler)
Устанавливает значение свойства onResized.
Описание свойства:
Обработчик изменения размера окна JavaScript. Этот обработчик вызывается, когда скрипт, выполняемый на веб-странице, перемещает или изменяет размер объекта window.
Параметры:
handler - значение свойства onResized
См. также:
  • getOnResized()
  • onResizedProperty()

onResizedProperty

public final ObjectProperty<EventHandler<WebEvent<Rectangle2D>>> onResizedProperty()
Свойство обработчика изменения размера окна JavaScript. Этот обработчик вызывается, когда скрипт, выполняемый на веб-странице, перемещает или изменяет размер объекта window.
Возвращает:
свойство onResized
См. также:
  • getOnResized()
  • setOnResized(EventHandler)

getOnVisibilityChanged

public final EventHandler<WebEvent<Boolean>> getOnVisibilityChanged()
Получает значение свойства onVisibilityChanged.
Описание свойства:
Свойство обработчика видимости окна JavaScript. Этот обработчик вызывается, когда скрипт, выполняемый на веб-странице, изменяет видимость объекта window.
Возвращает:
значение свойства onVisibilityChanged
См. также:
  • setOnVisibilityChanged(EventHandler)
  • onVisibilityChangedProperty()

setOnVisibilityChanged

public final void setOnVisibilityChanged(EventHandler<WebEvent<Boolean>> handler)
Устанавливает значение свойства onVisibilityChanged.
Описание свойства:
Свойство обработчика видимости окна JavaScript. Этот обработчик вызывается, когда скрипт, выполняемый на веб-странице, изменяет видимость объекта window.
Параметры:
handler - значение свойства onVisibilityChanged
См. также:
  • getOnVisibilityChanged()
  • onVisibilityChangedProperty()

onVisibilityChangedProperty

public final ObjectProperty<EventHandler<WebEvent<Boolean>>> onVisibilityChangedProperty()
Свойство обработчика видимости окна JavaScript. Этот обработчик вызывается, когда скрипт, выполняемый на веб-странице, изменяет видимость объекта window.
Возвращает:
свойство onVisibilityChanged
См. также:
  • getOnVisibilityChanged()
  • setOnVisibilityChanged(EventHandler)

getCreatePopupHandler

public final Callback<PopupFeatures,WebEngine> getCreatePopupHandler()
Получает значение свойства createPopupHandler.
Описание свойства:
Свойство обработчика всплывающих окон JavaScript. Этот обработчик вызывается, когда скрипт, выполняемый на веб-странице, запрашивает создание всплывающего окна.

Для выполнения этого запроса обработчик может создать новое WebEngine, добавить обработчик видимости и, необязательно, обработчик изменения размера, и вернуть созданный движок. Для блокировки всплывающего окна обработчик должен вернуть null.

По умолчанию установлен обработчик всплывающих окон, который открывает всплывающие окна в этом WebEngine.

Возвращает:
значение свойства createPopupHandler
См. также:
  • setCreatePopupHandler(Callback)
  • createPopupHandlerProperty()

setCreatePopupHandler

public final void setCreatePopupHandler(Callback<PopupFeatures,WebEngine> handler)
Устанавливает значение свойства createPopupHandler.
Описание свойства:
Свойство обработчика всплывающих окон JavaScript. Этот обработчик вызывается, когда скрипт, выполняемый на веб-странице, запрашивает создание всплывающего окна.

Для выполнения этого запроса обработчик может создать новое WebEngine, добавить обработчик видимости и, необязательно, обработчик изменения размера, и вернуть созданный движок. Для блокировки всплывающего окна обработчик должен вернуть null.

По умолчанию установлен обработчик всплывающих окон, который открывает всплывающие окна в этом WebEngine.

Параметры:
handler - значение свойства createPopupHandler
См. также:
  • getCreatePopupHandler()
  • createPopupHandlerProperty()

createPopupHandlerProperty

public final ObjectProperty<Callback<PopupFeatures,WebEngine>> createPopupHandlerProperty()
Свойство обработчика всплывающих окон JavaScript. Этот обработчик вызывается, когда скрипт, выполняемый на веб-странице, запрашивает создание всплывающего окна.

Для выполнения этого запроса обработчик может создать новое WebEngine, добавить обработчик видимости и, необязательно, обработчик изменения размера, и вернуть созданный движок. Для блокировки всплывающего окна обработчик должен вернуть null.

По умолчанию установлен обработчик всплывающих окон, который открывает всплывающие окна в этом WebEngine.

Возвращает:
свойство createPopupHandler
См. также:
  • getCreatePopupHandler()
  • setCreatePopupHandler(Callback)

getConfirmHandler

public final Callback<String,Boolean> getConfirmHandler()
Получает значение свойства confirmHandler.
Описание свойства:
Свойство обработчика confirm JavaScript. Этот обработчик вызывается, когда скрипт, выполняемый на веб-странице, вызывает функцию confirm.

Реализация может отобразить диалоговое окно с опциями «Да» и «Нет» и вернуть выбор пользователя.

Возвращает:
значение свойства confirmHandler
См. также:
  • setConfirmHandler(Callback)
  • confirmHandlerProperty()

setConfirmHandler

public final void setConfirmHandler(Callback<String,Boolean> handler)
Устанавливает значение свойства confirmHandler.
Описание свойства:
Свойство обработчика confirm JavaScript. Этот обработчик вызывается, когда скрипт, выполняемый на веб-странице, вызывает функцию confirm.

Реализация может отобразить диалоговое окно с опциями «Да» и «Нет» и вернуть выбор пользователя.

Параметры:
handler - значение свойства confirmHandler
См. также:
  • getConfirmHandler()
  • confirmHandlerProperty()

confirmHandlerProperty

public final ObjectProperty<Callback<String,Boolean>> confirmHandlerProperty()
Свойство обработчика confirm JavaScript. Этот обработчик вызывается, когда скрипт, выполняемый на веб-странице, вызывает функцию confirm.

Реализация может отобразить диалоговое окно с опциями «Да» и «Нет» и вернуть выбор пользователя.

Возвращает:
свойство confirmHandler
См. также:
  • getConfirmHandler()
  • setConfirmHandler(Callback)

getPromptHandler

public final Callback<PromptData,String> getPromptHandler()
Получает значение свойства promptHandler.
Описание свойства:
Свойство обработчика prompt JavaScript. Этот обработчик вызывается, когда скрипт, выполняемый на веб-странице, вызывает функцию prompt.

Реализация может отобразить диалоговое окно с текстовым полем и вернуть введенный пользователем текст.

Возвращает:
значение свойства promptHandler
См. также:
  • setPromptHandler(Callback)
  • promptHandlerProperty()

setPromptHandler

public final void setPromptHandler(Callback<PromptData,String> handler)
Устанавливает значение свойства promptHandler.
Описание свойства:
Свойство обработчика prompt JavaScript. Этот обработчик вызывается, когда скрипт, выполняемый на веб-странице, вызывает функцию prompt.

Реализация может отобразить диалоговое окно с текстовым полем и вернуть введенный пользователем текст.

Параметры:
handler - значение свойства promptHandler
См. также:
  • getPromptHandler()
  • promptHandlerProperty()

promptHandlerProperty

public final ObjectProperty<Callback<PromptData,String>> promptHandlerProperty()
Свойство обработчика prompt JavaScript. Этот обработчик вызывается, когда скрипт, выполняемый на веб-странице, вызывает функцию prompt.

Реализация может отобразить диалоговое окно с текстовым полем и вернуть введенный пользователем текст.

Возвращает:
свойство promptHandler
См. также:
  • getPromptHandler()
  • setPromptHandler(Callback)

getOnError

public final EventHandler<WebErrorEvent> getOnError()
Получает значение свойства onError.
Описание свойства:
Обработчик событий, вызываемый при возникновении ошибки.
Значение по умолчанию:
null
Возвращает:
значение свойства onError
С:
JavaFX 8.0
См. также:
  • setOnError(EventHandler)
  • onErrorProperty()

setOnError

public final void setOnError(EventHandler<WebErrorEvent> handler)
Устанавливает значение свойства onError.
Описание свойства:
Обработчик событий, вызываемый при возникновении ошибки.
Значение по умолчанию:
null
Параметры:
handler - значение для свойства onError
С:
JavaFX 8.0
См. также:
  • getOnError()
  • onErrorProperty()

onErrorProperty

public final ObjectProperty<EventHandler<WebErrorEvent>> onErrorProperty()
Обработчик событий, вызываемый при возникновении ошибки.
Значение по умолчанию:
null
Возвращает:
свойство onError
С:
JavaFX 8.0
См. также:
  • getOnError()
  • setOnError(EventHandler)

load

public void load(String url)
Загружает веб-страницу в этот движок. Этот метод запускает асинхронную загрузку и возвращается немедленно.
Параметры:
url - URL веб-страницы для загрузки

loadContent

public void loadContent(String content)
Загружает заданное содержимое HTML напрямую. Этот метод полезен, когда у вас есть строка HTML, составленная в памяти или загруженная из системы, недоступной по URL (например, текст HTML может быть получен из базы данных). Как и в случае с load(String), этот метод асинхронный.
Параметры:
content - содержимое HTML для загрузки

loadContent

public void loadContent(String content, String contentType)
Загружает заданное содержимое напрямую. Этот метод полезен, когда у вас есть содержимое, составленное в памяти, или загруженное из системы, недоступной по URL (например, текст SVG может быть получен из базы данных). Как и в случае с load(String), этот метод асинхронный. Этот метод также позволяет указать тип содержимого загружаемой строки и, таким образом, может по желанию поддерживать другие типы помимо просто HTML.
Параметры:
content - содержимое HTML для загрузки
contentType - тип загружаемого содержимого

reload

public void reload()
Перезагружает текущую страницу, загруженную по URL или напрямую из строки в одном из методов loadContent.

getHistory

public WebHistory getHistory()
Возвращает объект истории сессии.
Возвращает:
объект истории
С:
JavaFX 2.2

executeScript

public Object executeScript(String script)
Выполняет скрипт в контексте текущей страницы.
Параметры:
script - скрипт
Возвращает:
результат выполнения, преобразованный в объект Java с использованием следующих правил:
  • JavaScript Int32 преобразуется в java.lang.Integer
  • Другие JavaScript числа преобразуются в java.lang.Double
  • JavaScript строка преобразуется в java.lang.String
  • JavaScript булево значение преобразуется в java.lang.Boolean
  • JavaScript null преобразуется в null
  • Большинство JavaScript объектов оборачиваются как netscape.javascript.JSObject
  • JavaScript объекты JSNode отображаются в экземпляры netscape.javascript.JSObject, которые также реализуют org.w3c.dom.Node
  • Особый случай - JavaScript класс JavaRuntimeObject, который используется для обертывания объекта Java как JavaScript значения - в этом случае мы просто извлекаем исходное значение Java.

print

public void print(PrinterJob job)
Печатает текущую веб-страницу с использованием заданной работы принтера.

Этот метод не изменяет состояние задания, а также не вызывает PrinterJob.endJob(), поэтому задание можно безопасно повторно использовать после этого.

Параметры:
job - задание принтера, используемое для печати
С:
JavaFX 8.0

© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API