Spec-Zone.ru › OpenJavaFX 11
Модуль javafx.web
Пакет javafx.scene.web

Класс WebEngine

  • 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() 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.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-значения

    Аргументы методов 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);
     
    Вы затем можете обратиться к объекту и методу со своей HTML-страницы:
    
        <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.

  • Since:
    JavaFX 2.0
  • Краткое описание свойств

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

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

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

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

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

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

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

      См. также:
      getCreatePopupHandler(), setCreatePopupHandler(Callback)
    • 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-Agent HTTP.
      Значение по умолчанию:
      зависит от системы
      С:
      JavaFX 8.0
    • getUserAgent

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

      public final StringProperty userAgentProperty()
      Указывает строку идентификатора пользователя. Эта строка является значением заголовка User-Agent HTTP.
      Значение по умолчанию:
      зависит от системы
      С:
      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()
      Свойство обработчика JavaScript alert. Этот обработчик вызывается, когда скрипт, выполняющийся на веб-странице, вызывает функцию 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.
      См. также:
      getOnVisibilityChanged(), setOnVisibilityChanged(EventHandler)
    • 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.

      См. также:
      getCreatePopupHandler(), setCreatePopupHandler(Callback)
    • 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()
      Свойство обработчика JavaScript confirm. Этот обработчик вызывается, когда сценарий, выполняемый на веб-странице, вызывает функцию 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()
      Свойство обработчика JavaScript prompt. Этот обработчик вызывается, когда сценарий, выполняемый на веб-странице, вызывает функцию 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.
    • 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