- java.lang.Object
-
- javafx.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()onAlertwindow.confirm()confirmHandlerwindow.open()createPopupHandlerwindow.open()и
window.close()onVisibilityChangedwindow.prompt()promptHandlerУстановка window.statusonStatusChangedУстановка любого из следующих:
window.innerWidth,window.innerHeight,
window.outerWidth,window.outerHeight,
window.screenX,window.screenY,
window.screenLeft,window.screenToponResizedСледующий пример демонстрирует обработчик, изменяющий размер окна браузера:
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.lang.Boolean; а строка — вjava.lang.String. Число может бытьjava.lang.Doubleилиjava.lang.Integer, в зависимости от ситуации. Значение undefined отображается как уникальный строковый объект со значением"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-значения
Аргументы методовJSObjectsetMemberи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.
Вы затем можете обратиться к объекту и методу со своей HTML-страницы: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содержащий пакет безусловно.Потоки
Объекты
WebEngineдолжны создаваться и к ним должен осуществляться доступ только из потока JavaFX Application. Это правило также относится к любым DOM- и JavaScript-объектам, полученным из объектаWebEngine. - Из произвольного URL-адреса с помощью метода
- Since:
- JavaFX 2.0
-
Краткое описание свойств
Свойства Тип Свойство Описание ObjectProperty<Callback<String,Boolean>>confirmHandlerСвойство обработчика JavaScriptconfirm.ObjectProperty<Callback<PopupFeatures,WebEngine>>createPopupHandlerСвойство обработчика всплывающих окон JavaScript.ReadOnlyObjectProperty<Document>documentОбъект документа текущей веб-страницы.BooleanPropertyjavaScriptEnabledУказывает, разрешена ли обработка JavaScript.ReadOnlyStringPropertylocationURL текущей веб-страницы.ObjectProperty<EventHandler<WebEvent<String>>>onAlertСвойство обработчика JavaScriptalert.ObjectProperty<EventHandler<WebErrorEvent>>onErrorОбработчик событий, вызываемый при возникновении ошибки.ObjectProperty<EventHandler<WebEvent<Rectangle2D>>>onResizedСвойство обработчика изменения размера окна JavaScript.ObjectProperty<EventHandler<WebEvent<String>>>onStatusChangedСвойство обработчика состояния JavaScript.ObjectProperty<EventHandler<WebEvent<Boolean>>>onVisibilityChangedСвойство обработчика видимости окна JavaScript.ObjectProperty<Callback<PromptData,String>>promptHandlerСвойство обработчика JavaScriptprompt.ReadOnlyStringPropertytitleЗаголовок текущей веб-страницы.StringPropertyuserAgentУказывает строку идентификатора пользовательского агента.ObjectProperty<File>userDataDirectoryУказывает директорию, которую этотWebEngineбудет использовать для хранения локальных данных пользователя.StringPropertyuserStyleSheetLocationРасположение пользовательского стилового файла как строка URL.
-
Краткое описание методов
Все методыМетоды экземпляраКонкретные методы Модификатор и тип Метод Описание ObjectProperty<Callback<String,Boolean>>confirmHandlerProperty()Свойство обработчика JavaScriptconfirm.ObjectProperty<Callback<PopupFeatures,WebEngine>>createPopupHandlerProperty()Свойство обработчика всплывающего окна JavaScript.ReadOnlyObjectProperty<Document>documentProperty()Объект документа текущей веб-страницы.ObjectexecuteScript(String script)Выполняет скрипт в контексте текущей страницы.Callback<String,Boolean>getConfirmHandler()Получает значение свойства confirmHandler.Callback<PopupFeatures,WebEngine>getCreatePopupHandler()Получает значение свойства createPopupHandler.DocumentgetDocument()Получает значение свойства document.WebHistorygetHistory()Возвращает объект истории сеанса.Worker<Void>getLoadWorker()Возвращает объектWorker, который можно использовать для отслеживания прогресса загрузки.StringgetLocation()Получает значение свойства location.EventHandler<WebEvent<String>>getOnAlert()Получает значение свойства onAlert.EventHandler<WebErrorEvent>getOnError()Получает значение свойства onError.EventHandler<WebEvent<Rectangle2D>>getOnResized()Получает значение свойства onResized.EventHandler<WebEvent<String>>getOnStatusChanged()Получает значение свойства onStatusChanged.EventHandler<WebEvent<Boolean>>getOnVisibilityChanged()Получает значение свойства onVisibilityChanged.Callback<PromptData,String>getPromptHandler()Получает значение свойства promptHandler.StringgetTitle()Получает значение свойства title.StringgetUserAgent()Получает значение свойства userAgent.FilegetUserDataDirectory()Получает значение свойства userDataDirectory.StringgetUserStyleSheetLocation()Получает значение свойства userStyleSheetLocation.booleanisJavaScriptEnabled()Получает значение свойства javaScriptEnabled.BooleanPropertyjavaScriptEnabledProperty()Указывает, разрешено ли выполнение JavaScript.voidload(String url)Загружает веб-страницу в этот движок.voidloadContent(String content)Загружает заданный HTML-контент непосредственно.voidloadContent(String content, String contentType)Загружает заданный контент непосредственно.ReadOnlyStringPropertylocationProperty()URL текущей веб-страницы.ObjectProperty<EventHandler<WebEvent<String>>>onAlertProperty()Свойство обработчика JavaScriptalert.ObjectProperty<EventHandler<WebErrorEvent>>onErrorProperty()Обработчик событий, вызываемый при возникновении ошибки.ObjectProperty<EventHandler<WebEvent<Rectangle2D>>>onResizedProperty()Свойство обработчика изменения размера окна JavaScript.ObjectProperty<EventHandler<WebEvent<String>>>onStatusChangedProperty()Свойство обработчика состояния JavaScript.ObjectProperty<EventHandler<WebEvent<Boolean>>>onVisibilityChangedProperty()Свойство обработчика видимости окна JavaScript.voidprint(PrinterJob job)Печатает текущую веб-страницу с использованием заданного задания печати.ObjectProperty<Callback<PromptData,String>>promptHandlerProperty()Свойство обработчика JavaScriptprompt.voidreload()Перезагружает текущую страницу, загруженную из URL или непосредственно из строки в одном из методовloadContent.voidsetConfirmHandler(Callback<String,Boolean> handler)Устанавливает значение свойства confirmHandler.voidsetCreatePopupHandler(Callback<PopupFeatures,WebEngine> handler)Устанавливает значение свойства createPopupHandler.voidsetJavaScriptEnabled(boolean value)Устанавливает значение свойства javaScriptEnabled.voidsetOnAlert(EventHandler<WebEvent<String>> handler)Устанавливает значение свойства onAlert.voidsetOnError(EventHandler<WebErrorEvent> handler)Устанавливает значение свойства onError.voidsetOnResized(EventHandler<WebEvent<Rectangle2D>> handler)Устанавливает значение свойства onResized.voidsetOnStatusChanged(EventHandler<WebEvent<String>> handler)Устанавливает значение свойства onStatusChanged.voidsetOnVisibilityChanged(EventHandler<WebEvent<Boolean>> handler)Устанавливает значение свойства onVisibilityChanged.voidsetPromptHandler(Callback<PromptData,String> handler)Устанавливает значение свойства promptHandler.
voidsetUserAgent(String value)Устанавливает значение свойства userAgent.voidsetUserDataDirectory(File value)Устанавливает значение свойства userDataDirectory.voidsetUserStyleSheetLocation(String value)Устанавливает значение свойства userStyleSheetLocation.ReadOnlyStringPropertytitleProperty()Заголовок текущей веб-страницы.StringPropertyuserAgentProperty()Указывает строку идентификатора пользователя-агента.ObjectProperty<File>userDataDirectoryProperty()Указывает каталог, который будет использоваться этимWebEngineдля хранения локальных данных пользователя.StringPropertyuserStyleSheetLocationProperty()Расположение пользовательского стиля в виде строки URL.
-
Подробное описание свойств
-
document
public final ReadOnlyObjectProperty<Document> documentProperty
Объект документа текущей веб-страницы. Значение равноnull, если веб-страница не загрузилась.- См. также:
getDocument()
-
location
public final ReadOnlyStringProperty locationProperty
URL текущей веб-страницы. Если у текущей страницы нет URL, значение равно пустой строке.- См. также:
getLocation()
-
title
public final ReadOnlyStringProperty titleProperty
Заголовок текущей веб-страницы. Если у текущей страницы нет заголовка, значение равноnull.- См. также:
getTitle()
-
javaScriptEnabled
public final BooleanProperty javaScriptEnabledProperty
Указывает, включено ли выполнение JavaScript.- Значение по умолчанию:
- true
- С версии:
- JavaFX 2.2
- См. также:
-
isJavaScriptEnabled(),setJavaScriptEnabled(boolean)
-
userStyleSheetLocation
public final StringProperty userStyleSheetLocationProperty
Расположение пользовательского стиля в виде строкового URL.Это должен быть локальный URL, т.е. либо
'data:', либо'file:', либо'jar:'. Удаленные URL запрещены по соображениям безопасности.- Значение по умолчанию:
- null
- С версии:
- JavaFX 2.2
- См. также:
-
getUserStyleSheetLocation(),setUserStyleSheetLocation(String)
-
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)
-
userAgent
public final StringProperty userAgentProperty
Указывает строку идентификатора пользовательского агента. Эта строка — значение заголовка HTTPUser-Agent.- Значение по умолчанию:
- зависит от системы
- С версии:
- JavaFX 8.0
- См. также:
-
getUserAgent(),setUserAgent(String)
-
onAlert
public final ObjectProperty<EventHandler<WebEvent<String>>> onAlertProperty
Свойство обработчика JavaScriptalert. Этот обработчик вызывается, когда сценарий, выполняемый на веб-странице, вызывает функциюalert.- См. также:
-
getOnAlert(),setOnAlert(EventHandler)
-
onStatusChanged
public final ObjectProperty<EventHandler<WebEvent<String>>> onStatusChangedProperty
Свойство обработчика статуса JavaScript. Этот обработчик вызывается, когда сценарий, выполняемый на веб-странице, устанавливает свойствоwindow.status.- См. также:
-
getOnStatusChanged(),setOnStatusChanged(EventHandler)
-
onResized
public final ObjectProperty<EventHandler<WebEvent<Rectangle2D>>> onResizedProperty
Свойство обработчика изменения размера окна JavaScript. Этот обработчик вызывается, когда сценарий, выполняемый на веб-странице, перемещает или изменяет размер объектаwindow.- См. также:
-
getOnResized(),setOnResized(EventHandler)
-
onVisibilityChanged
public final ObjectProperty<EventHandler<WebEvent<Boolean>>> onVisibilityChangedProperty
Свойство обработчика видимости окна JavaScript. Этот обработчик вызывается, когда сценарий, выполняемый на веб-странице, изменяет видимость объектаwindow.
-
createPopupHandler
public final ObjectProperty<Callback<PopupFeatures,WebEngine>> createPopupHandlerProperty
Свойство обработчика всплывающего окна JavaScript. Этот обработчик вызывается, когда сценарий, выполняемый на веб-странице, запрашивает создание всплывающего окна.Для удовлетворения этого запроса обработчик может создать новое
WebEngine, прикрепить обработчик видимости и, необязательно, обработчик изменения размера, и вернуть созданный движок. Чтобы заблокировать всплывающее окно, обработчик должен вернутьnull.По умолчанию установлен обработчик всплывающих окон, который открывает всплывающие окна в этом
WebEngine.
-
confirmHandler
public final ObjectProperty<Callback<String,Boolean>> confirmHandlerProperty
Свойство обработчика подтверждения JavaScript. Этот обработчик вызывается, когда сценарий, выполняемый на веб-странице, вызывает функциюconfirm.Реализация может отобразить диалоговое окно с вариантами «Да» и «Нет» и вернуть выбор пользователя.
- См. также:
-
getConfirmHandler(),setConfirmHandler(Callback)
-
promptHandler
public final ObjectProperty<Callback<PromptData,String>> promptHandlerProperty
Свойство обработчика запроса JavaScript. Этот обработчик вызывается, когда сценарий, выполняемый на веб-странице, вызывает функциюprompt.Реализация может отобразить диалоговое окно с текстовым полем и вернуть введённый пользователем текст.
- См. также:
-
getPromptHandler(),setPromptHandler(Callback)
-
onError
public final ObjectProperty<EventHandler<WebErrorEvent>> onErrorProperty
Обработчик событий, вызываемый при возникновении ошибки.- Значение по умолчанию:
null- С версии:
- JavaFX 8.0
- См. также:
-
getOnError(),setOnError(EventHandler)
-
-
Подробное описание конструкторов
-
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, если загрузка веб-страницы не удалась.
-
documentProperty
public final ReadOnlyObjectProperty<Document> documentProperty()
Объект документа текущей веб-страницы. Значение равноnull, если загрузка веб-страницы не удалась.- См. также:
getDocument()
-
getLocation
public final String getLocation()
Получает значение свойства location.- Описание свойства:
- URL текущей веб-страницы. Если у текущей страницы нет URL, значение равно пустой строке.
-
locationProperty
public final ReadOnlyStringProperty locationProperty()
URL текущей веб-страницы. Если у текущей страницы нет URL, значение равно пустой строке.- См. также:
getLocation()
-
getTitle
public final String getTitle()
Получает значение свойства title.- Описание свойства:
- Название текущей веб-страницы. Если у текущей страницы нет названия, значение равно
null.
-
titleProperty
public final ReadOnlyStringProperty titleProperty()
Название текущей веб-страницы. Если у текущей страницы нет названия, значение равноnull.- См. также:
getTitle()
-
setJavaScriptEnabled
public final void setJavaScriptEnabled(boolean value)
Устанавливает значение свойства javaScriptEnabled.- Описание свойства:
- Указывает, разрешена ли работа JavaScript.
- Значение по умолчанию:
- true
- С:
- JavaFX 2.2
-
isJavaScriptEnabled
public final boolean isJavaScriptEnabled()
Получает значение свойства javaScriptEnabled.- Описание свойства:
- Указывает, разрешена ли работа JavaScript.
- Значение по умолчанию:
- true
- С:
- JavaFX 2.2
-
javaScriptEnabledProperty
public final BooleanProperty javaScriptEnabledProperty()
Указывает, разрешена ли работа JavaScript.- Значение по умолчанию:
- true
- С:
- JavaFX 2.2
- См. также:
-
isJavaScriptEnabled(),setJavaScriptEnabled(boolean)
-
setUserStyleSheetLocation
public final void setUserStyleSheetLocation(String value)
Устанавливает значение свойства userStyleSheetLocation.- Описание свойства:
- Расположение пользовательского стилизованного листа как строка URL.
Это должен быть локальный URL, т.е. либо
'data:', либо'file:', либо'jar:'. Дистанционные URL запрещены по соображениям безопасности. - Значение по умолчанию:
- null
- С:
- JavaFX 2.2
-
getUserStyleSheetLocation
public final String getUserStyleSheetLocation()
Получает значение свойства userStyleSheetLocation.- Описание свойства:
- Расположение пользовательского стилизованного листа как строка URL.
Это должен быть локальный URL, т.е. либо
'data:', либо'file:', либо'jar:'. Дистанционные URL запрещены по соображениям безопасности. - Значение по умолчанию:
- null
- С:
- JavaFX 2.2
-
userStyleSheetLocationProperty
public final StringProperty userStyleSheetLocationProperty()
Расположение пользовательского стилизованного листа как строка URL.Это должен быть локальный URL, т.е. либо
'data:', либо'file:', либо'jar:'. Дистанционные URL запрещены по соображениям безопасности.- Значение по умолчанию:
- null
- С:
- 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- С:
- JavaFX 8.0
-
setUserDataDirectory
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- С:
- JavaFX 8.0
-
-
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- С:
- JavaFX 8.0
- См. также:
-
getUserDataDirectory(),setUserDataDirectory(File)
-
setUserAgent
public final void setUserAgent(String value)
Устанавливает значение свойства userAgent.- Описание свойства:
- Указывает строку идентификатора пользователя. Эта строка является значением заголовка
User-AgentHTTP. - Значение по умолчанию:
- зависит от системы
- С:
- JavaFX 8.0
-
getUserAgent
public final String getUserAgent()
Возвращает значение свойства userAgent.- Описание свойства:
- Указывает строку идентификатора пользователя. Эта строка является значением заголовка
User-AgentHTTP. - Значение по умолчанию:
- зависит от системы
- С:
- JavaFX 8.0
-
userAgentProperty
public final StringProperty userAgentProperty()
Указывает строку идентификатора пользователя. Эта строка является значением заголовкаUser-AgentHTTP.- Значение по умолчанию:
- зависит от системы
- С:
- JavaFX 8.0
- См. также:
-
getUserAgent(),setUserAgent(String)
-
getOnAlert
public final EventHandler<WebEvent<String>> getOnAlert()
Возвращает значение свойства onAlert.- Описание свойства:
- Свойство обработчика JavaScript
alert. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, вызывает функциюalert.
-
setOnAlert
public final void setOnAlert(EventHandler<WebEvent<String>> handler)
Устанавливает значение свойства onAlert.- Описание свойства:
- Свойство обработчика JavaScript
alert. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, вызывает функциюalert.
-
onAlertProperty
public final ObjectProperty<EventHandler<WebEvent<String>>> onAlertProperty()
Свойство обработчика JavaScriptalert. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, вызывает функциюalert.- См. также:
-
getOnAlert(),setOnAlert(EventHandler)
-
getOnStatusChanged
public final EventHandler<WebEvent<String>> getOnStatusChanged()
Возвращает значение свойства onStatusChanged.- Описание свойства:
- Свойство обработчика статуса JavaScript. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, устанавливает свойство
window.status.
-
setOnStatusChanged
public final void setOnStatusChanged(EventHandler<WebEvent<String>> handler)
Устанавливает значение свойства onStatusChanged.- Описание свойства:
- Свойство обработчика статуса JavaScript. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, устанавливает свойство
window.status.
-
onStatusChangedProperty
public final ObjectProperty<EventHandler<WebEvent<String>>> onStatusChangedProperty()
Свойство обработчика статуса JavaScript. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, устанавливает свойствоwindow.status.- См. также:
-
getOnStatusChanged(),setOnStatusChanged(EventHandler)
-
getOnResized
public final EventHandler<WebEvent<Rectangle2D>> getOnResized()
Возвращает значение свойства onResized.- Описание свойства:
- Свойство обработчика изменения размера окна JavaScript. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, перемещает или изменяет размер объекта
window.
-
setOnResized
public final void setOnResized(EventHandler<WebEvent<Rectangle2D>> handler)
Устанавливает значение свойства onResized.- Описание свойства:
- Свойство обработчика изменения размера окна JavaScript. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, перемещает или изменяет размер объекта
window.
-
onResizedProperty
public final ObjectProperty<EventHandler<WebEvent<Rectangle2D>>> onResizedProperty()
Свойство обработчика изменения размера окна JavaScript. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, перемещает или изменяет размер объектаwindow.- См. также:
-
getOnResized(),setOnResized(EventHandler)
-
getOnVisibilityChanged
public final EventHandler<WebEvent<Boolean>> getOnVisibilityChanged()
Возвращает значение свойства onVisibilityChanged.- Описание свойства:
- Свойство обработчика изменения видимости окна JavaScript. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, изменяет видимость объекта
window.
-
setOnVisibilityChanged
public final void setOnVisibilityChanged(EventHandler<WebEvent<Boolean>> handler)
Устанавливает значение свойства onVisibilityChanged.- Описание свойства:
- Свойство обработчика изменения видимости окна JavaScript. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, изменяет видимость объекта
window.
-
onVisibilityChangedProperty
public final ObjectProperty<EventHandler<WebEvent<Boolean>>> onVisibilityChangedProperty()
Свойство обработчика изменения видимости окна JavaScript. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, изменяет видимость объектаwindow.
-
getCreatePopupHandler
public final Callback<PopupFeatures,WebEngine> getCreatePopupHandler()
Возвращает значение свойства createPopupHandler.- Описание свойства:
- Свойство обработчика всплывающих окон JavaScript. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, запрашивает создание всплывающего окна.
Для удовлетворения этого запроса обработчик может создать новое
WebEngine, прикрепить обработчик видимости и необязательно обработчик изменения размера и вернуть созданный движок. Для блокирования всплывающего окна обработчик должен вернутьnull.По умолчанию установлен обработчик всплывающих окон, открывающий их в этом
WebEngine.
-
setCreatePopupHandler
public final void setCreatePopupHandler(Callback<PopupFeatures,WebEngine> handler)
Устанавливает значение свойства createPopupHandler.- Описание свойства:
- Свойство обработчика всплывающих окон JavaScript. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, запрашивает создание всплывающего окна.
Для удовлетворения этого запроса обработчик может создать новое
WebEngine, прикрепить обработчик видимости и необязательно обработчик изменения размера и вернуть созданный движок. Для блокирования всплывающего окна обработчик должен вернутьnull.По умолчанию установлен обработчик всплывающих окон, открывающий их в этом
WebEngine.
-
createPopupHandlerProperty
public final ObjectProperty<Callback<PopupFeatures,WebEngine>> createPopupHandlerProperty()
Свойство обработчика всплывающих окон JavaScript. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, запрашивает создание всплывающего окна.Для удовлетворения этого запроса обработчик может создать новое
WebEngine, прикрепить обработчик видимости и необязательно обработчик изменения размера и вернуть созданный движок. Для блокирования всплывающего окна обработчик должен вернутьnull.По умолчанию установлен обработчик всплывающих окон, открывающий их в этом
WebEngine.
-
-
getConfirmHandler
public final Callback<String,Boolean> getConfirmHandler()
Получает значение свойства confirmHandler.- Описание свойства:
- Свойство обработчика JavaScript
confirm. Этот обработчик вызывается, когда сценарий, выполняемый на веб-странице, вызывает функциюconfirm.Реализация может отобразить диалоговое окно с опциями «Да» и «Нет» и вернуть выбор пользователя.
-
setConfirmHandler
public final void setConfirmHandler(Callback<String,Boolean> handler)
Устанавливает значение свойства confirmHandler.- Описание свойства:
- Свойство обработчика JavaScript
confirm. Этот обработчик вызывается, когда сценарий, выполняемый на веб-странице, вызывает функциюconfirm.Реализация может отобразить диалоговое окно с опциями «Да» и «Нет» и вернуть выбор пользователя.
-
confirmHandlerProperty
public final ObjectProperty<Callback<String,Boolean>> confirmHandlerProperty()
Свойство обработчика JavaScriptconfirm. Этот обработчик вызывается, когда сценарий, выполняемый на веб-странице, вызывает функциюconfirm.Реализация может отобразить диалоговое окно с опциями «Да» и «Нет» и вернуть выбор пользователя.
- См. также:
-
getConfirmHandler(),setConfirmHandler(Callback)
-
getPromptHandler
public final Callback<PromptData,String> getPromptHandler()
Получает значение свойства promptHandler.- Описание свойства:
- Свойство обработчика JavaScript
prompt. Этот обработчик вызывается, когда сценарий, выполняемый на веб-странице, вызывает функциюprompt.Реализация может отобразить диалоговое окно с текстовым полем и вернуть введенные пользователем данные.
-
setPromptHandler
public final void setPromptHandler(Callback<PromptData,String> handler)
Устанавливает значение свойства promptHandler.- Описание свойства:
- Свойство обработчика JavaScript
prompt. Этот обработчик вызывается, когда сценарий, выполняемый на веб-странице, вызывает функциюprompt.Реализация может отобразить диалоговое окно с текстовым полем и вернуть введенные пользователем данные.
-
promptHandlerProperty
public final ObjectProperty<Callback<PromptData,String>> promptHandlerProperty()
Свойство обработчика JavaScriptprompt. Этот обработчик вызывается, когда сценарий, выполняемый на веб-странице, вызывает функциюprompt.Реализация может отобразить диалоговое окно с текстовым полем и вернуть введенные пользователем данные.
- См. также:
-
getPromptHandler(),setPromptHandler(Callback)
-
getOnError
public final EventHandler<WebErrorEvent> getOnError()
Получает значение свойства onError.- Описание свойства:
- Обработчик событий, вызываемый при возникновении ошибки.
- Значение по умолчанию:
null- С:
- JavaFX 8.0
-
setOnError
public final void setOnError(EventHandler<WebErrorEvent> handler)
Устанавливает значение свойства onError.- Описание свойства:
- Обработчик событий, вызываемый при возникновении ошибки.
- Значение по умолчанию:
null- С:
- JavaFX 8.0
-
onErrorProperty
public final ObjectProperty<EventHandler<WebErrorEvent>> onErrorProperty()
Обработчик событий, вызываемый при возникновении ошибки.- Значение по умолчанию:
null- С:
- 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 boolean в
java.lang.Boolean - JavaScript
nullвnull - Большинство объектов JavaScript обертываются как
netscape.javascript.JSObject - Объекты JavaScript JSNode отображаются в экземпляры
netscape.javascript.JSObject, которые также реализуютorg.w3c.dom.Node - Особый случай — класс JavaScript
JavaRuntimeObject, используемый для обертывания объекта Java как значения JavaScript — в этом случае мы просто извлекаем исходное значение Java.
- JavaScript Int32 преобразуется в
-
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.