Spec-Zone.ru › OpenJavaFX 8
javafx.application

Класс Preloader

java.lang.Object
  • javafx.application.Application
    • javafx.application.Preloader


public abstract class Preloader
extends Application
Класс, расширяемый для определения необязательного предварительного загрузчика для приложения JavaFX. Приложение может содержать предварительный загрузчик, который используется для улучшения опыта загрузки приложения, особенно для приложений, которые встроены в браузер или запускаются в режиме выполнения веб-старта.

Предварительный загрузчик — это небольшое приложение, которое запускается перед основным приложением для настройки процесса запуска. Предварительный загрузчик:

  • получает уведомления о прогрессе загрузки ресурсов приложения
  • получает уведомления об ошибках
  • получает уведомления об инициализации и запуске приложения
  • определяет, когда приложение должно стать видимым

По умолчанию предварительный загрузчик отображается поверх сцены приложения Stage, которая не видна до тех пор, пока предварительный загрузчик не станет видимым. Предварительный загрузчик должен скрыть себя, чтобы сделать приложение видимым. Хорошей практикой является выполнение этого не ранее, чем непосредственно перед вызовом application.start(), так как в противном случае само приложение не будет видно.

Предварительный загрузчик также может взаимодействовать с приложением для достижения расширенных визуальных эффектов или обмена данными (например, для реализации экрана входа в систему). Предварительный загрузчик получает ссылку на приложение и может извлечь необходимые данные для взаимодействия из приложения, если приложение реализует интерфейс, известный и используемый предварительным загрузчиком. В целом, не рекомендуется разрабатывать предварительные загрузчики таким образом, чтобы приложение вызывало их напрямую, так как это приведёт к плохому пользовательскому опыту, если приложение подписано, а предварительный загрузчик нет.

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

Реализации пользовательских предварительных загрузчиков должны следовать этим правилам:

  1. должен существовать класс, расширяющий Preloader
  2. классы, необходимые для предварительного загрузчика, должны быть упакованы в отдельный jar. Рекомендуется, чтобы этот jar не был подписан.
  3. Описание развертывания JNLP должно иметь атрибут preloader-class со полным именем класса в качестве значения в элементе javafx-desc, а необходимые для прогресса jar должны иметь тип download="progress"

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

Обратите внимание, что предварительные загрузчики подчиняются тем же правилам, что и другие приложения JavaFX, включая правила потоков FX. В частности, конструктор класса и метод init() будут вызваны в потоке, отличном от FX, а start() будет выполнен в потоке приложения FX. Это также означает, что конструктор/init() приложения будет выполняться параллельно с запуском предварительного загрузчика.

Обработчики уведомлений предварительного загрузчика будут передаваться в потоке приложения FX.

Закрытие (включая при вызове stop()) уточняется.

С:

JavaFX 2.0

  • Краткое описание вложенных классов

    Вложенные классы
    Модификатор и тип Класс и описание
    static class  Preloader.ErrorNotification
    Уведомление предварительного загрузчика, сообщающее об ошибке.
    static interface  Preloader.PreloaderNotification
    Маркерный интерфейс для всех уведомлений предварительного загрузчика.
    static class  Preloader.ProgressNotification
    Уведомление предварительного загрузчика, сообщающее о прогрессе.
    static class  Preloader.StateChangeNotification
    Уведомление, сигнализирующее о изменении состояния приложения.
    • Вложенные классы/интерфейсы, унаследованные от класса javafx.application.Application

      Application.Parameters
  • Краткое описание полей

    • Поля, унаследованные от класса javafx.application.Application

      STYLESHEET_CASPIAN, STYLESHEET_MODENA
  • Краткое описание конструкторов

    Конструкторы
    Конструктор и описание
    Preloader()
  • Краткое описание методов

    Все методыМетоды экземпляровКонкретные методы
    Модификатор и тип Метод и описание
    void handleApplicationNotification(Preloader.PreloaderNotification info)
    Указывает уведомление, сгенерированное приложением.
    boolean handleErrorNotification(Preloader.ErrorNotification info)
    Вызывается при возникновении ошибки.
    void handleProgressNotification(Preloader.ProgressNotification info)
    Указывает прогресс загрузки.
    void handleStateChangeNotification(Preloader.StateChangeNotification info)
    Указывает изменение состояния приложения.
    • Методы, унаследованные от класса javafx.application.Application

      getHostServices, getParameters, getUserAgentStylesheet, init, launch, launch, notifyPreloader, setUserAgentStylesheet, start, stop
    • Методы, унаследованные от класса java.lang.Object

      clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Подробное описание конструктора

    • Preloader

      public Preloader()
  • Подробное описание методов

    • handleProgressNotification

      public void handleProgressNotification(Preloader.ProgressNotification info)
      Указывает прогресс загрузки. Этот метод вызывается средой FX для указания прогресса при загрузке ресурсов приложения. Он не будет вызываться для передачи ProgressNotification, отправленных в notifyPreloader.

      Реализация этого метода, предоставляемая классом Preloader, ничего не делает.

      Параметры:

      info - уведомление о прогрессе

    • handleStateChangeNotification

      public void handleStateChangeNotification(Preloader.StateChangeNotification info)
      Указывает изменение состояния приложения. Этот метод вызывается средой FX как часть жизненного цикла приложения.

      Реализация этого метода, предоставляемая классом Preloader, ничего не делает.

      Параметры:

      info - уведомление о изменении состояния

    • handleApplicationNotification

      public void handleApplicationNotification(Preloader.PreloaderNotification info)
      Указывает уведомление, сгенерированное приложением. Этот метод вызывается средой FX для передачи уведомления, отправленного через notifyPreloader.

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

      Реализация этого метода, предоставляемая классом Preloader, ничего не делает.

      Параметры:

      info - уведомление, сгенерированное приложением

    • handleErrorNotification

      public boolean handleErrorNotification(Preloader.ErrorNotification info)
      Вызывается при возникновении ошибки.

      Реализация этого метода, предоставляемая классом Preloader, возвращает false, что указывает на то, что обработчик ошибок по умолчанию должен отобразить сообщение пользователю.

      Параметры:

      info - уведомление об ошибке, описывающее причину этой ошибки

      Возвращает:

      true, если ошибка была показана пользователю предварительным загрузчиком и дополнительная визуализация не требуется; в противном случае, false.

© 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