Spec-Zone.ru › OpenJavaFX 21

Класс Прелоадер

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

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

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

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

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

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

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

  1. класс пользовательского прелоадера должен расширять Preloader
  2. классы, необходимые для прелоадера, должны быть упакованы в отдельном jar-файле.

Приложения также могут отправлять пользовательские уведомления прелоадеру, используя метод 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

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

Прелоадер

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