Spec-Zone.ru › OpenJDK 24

Класс SplashScreen

java.lang.Object
java.awt.SplashScreen
public final class SplashScreen extends Object
Экран загрузки может быть показан при запуске приложения, перед запуском Java Virtual Machine (JVM). Экран загрузки отображается как окно без декораций, содержащее изображение. Для изображения можно использовать файлы GIF, JPEG или PNG. Анимация поддерживается для формата GIF, а прозрачность поддерживается как для GIF, так и для PNG. Окно размещается в центре экрана. Положение на системах с несколькими мониторами не задано. Оно зависит от платформы и реализации. Окно экрана загрузки закрывается автоматически как только первое окно отображается Swing/AWT (также может быть закрыто вручную с помощью API Java, см. ниже).

Если ваше приложение упаковано в файл jar, вы можете использовать параметр "SplashScreen-Image" в файле манифеста, чтобы показать экран загрузки. Поместите изображение в архив jar и укажите путь в параметре. Путь не должен содержать начашного слэша.
Например, в файле manifest.mf:

 Manifest-Version: 1.0
 Main-Class: Test
 SplashScreen-Image: filename.gif
 

Если реализация Java предоставляет командную строку и вы запускаете приложение с помощью командной строки или ярлыка, используйте параметр запуска приложения Java, чтобы отобразить экран загрузки. Реализация Oracle позволяет указать расположение изображения экрана загрузки с помощью параметра -splash:.
Например:

 java -splash:filename.gif Test
 
Поддерживается масштабирование изображения HiDPI. Имя не масштабируемого изображения, т.е. имя файла.gif, должно быть передано в параметре manifest.mf/-splash: для всех типов изображений независимо от HiDPI и Non-HiDPI. Ниже приведены правила именования масштабируемых изображений. Масштаб экрана 1,25: filename@125pct.gif Масштаб экрана 1,50: filename@150pct.gif Масштаб экрана 2: filename@200pct.gif и filename@2x.gif оба поддерживаются Масштаб экрана 2,50: filename@250pct.gif Масштаб экрана 3: filename@300pct.gif и filename@3x.gif оба поддерживаются Интерфейс командной строки имеет более высокий приоритет по сравнению с настройками манифеста.

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

Подразумевается, что указанное изображение отображается на экране "как есть", т.е. сохраняя точные значения цветов, как указано в файле изображения. Однако в некоторых случаях отображаемое изображение может отличаться, например, при применении цветового дithering для отображения изображения 32 бита на пиксель (bpp) на экране с 16 или 8 bpp. Конфигурация отображения родной платформы также может повлиять на цвета отображаемого изображения (например, цветовые профили и т.д.)

Класс SplashScreen предоставляет API для управления экраном загрузки. Этот класс может использоваться для закрытия экрана загрузки, изменения изображения экрана загрузки, получения позиции/размера окна экрана загрузки и рисования на экране загрузки. Он не может использоваться для создания экрана загрузки. Для этого следует использовать параметры, предоставляемые реализацией Java.

Этот класс не может быть инстанцирован. Может существовать только один экземпляр этого класса, и он может быть получен с помощью статического метода getSplashScreen(). В случае если экран загрузки не был создан при запуске приложения через командную строку или параметр файла манифеста, метод getSplashScreen возвращает null.

С:
1.6

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

Модификатор и тип Метод Описание
void close()
Скрывает экран загрузки, закрывает окно и освобождает все связанные ресурсы.
Graphics2D createGraphics()
Создает контекст графики (как объект Graphics2D) для наложения изображения на экран загрузки, что позволяет рисовать поверх экрана загрузки.
Rectangle getBounds()
Возвращает границы окна экрана загрузки в виде Rectangle.
URL getImageURL()
Возвращает текущее изображение экрана загрузки.
Dimension getSize()
Возвращает размер окна экрана загрузки в виде Dimension.
static SplashScreen getSplashScreen()
Возвращает объект SplashScreen, используемый для управления экраном загрузки Java на системах, поддерживающих отображение.
boolean isVisible()
Определяет, виден ли экран загрузки.
void setImageURL(URL imageURL)
Изменяет изображение экрана загрузки.
void update()
Обновляет окно экрана загрузки текущим содержимым изображения наложения.

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

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

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

getSplashScreen

public static SplashScreen getSplashScreen()
Возвращает объект SplashScreen, используемый для управления всплывающим окном Java на системах, поддерживающих отображение.
Возвращает:
экземпляр SplashScreen, или null, если его нет или он уже закрыт
Исключение:
UnsupportedOperationException - если функция всплывающего окна не поддерживается текущим набором инструментов
HeadlessException - если GraphicsEnvironment.isHeadless() возвращает true

setImageURL

public void setImageURL(URL imageURL) throws NullPointerException, IOException, IllegalStateException
Изменяет изображение всплывающего окна. Новое изображение загружается из указанного URL; поддерживаются форматы изображений GIF, JPEG и PNG. Метод возвращается после завершения загрузки изображения и обновления окна. Окно всплывающего окна изменяет размер в соответствии с размером изображения и центрируется на экране.
Параметры:
imageURL - URL нового изображения всплывающего окна, не null
Исключение:
NullPointerException - если imageURL является null
IOException - если произошла ошибка при загрузке изображения
IllegalStateException - если всплывающее окно уже закрыто

getImageURL

public URL getImageURL() throws IllegalStateException
Возвращает текущее изображение всплывающего окна.
Возвращает:
URL файла текущего изображения всплывающего окна
Исключение:
IllegalStateException - если всплывающее окно уже закрыто

getBounds

public Rectangle getBounds() throws IllegalStateException
Возвращает границы окна всплывающего окна в виде Rectangle. Это может быть полезно, например, если вы хотите заменить всплывающее окно своим окном в том же месте.

Вы не можете контролировать размер или положение всплывающего окна. Размер всплывающего окна автоматически корректируется при изменении изображения.

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

Возвращает:
объект Rectangle, содержащий границы всплывающего окна
Исключение:
IllegalStateException - если всплывающее окно уже закрыто

getSize

public Dimension getSize() throws IllegalStateException
Возвращает размер окна всплывающего окна в виде Dimension. Это может быть полезно, например, если вы хотите рисовать на поверхностном покрытии всплывающего окна.

Вы не можете контролировать размер или положение всплывающего окна. Размер всплывающего окна автоматически корректируется при изменении изображения.

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

Возвращает:
объект Dimension, указывающий размер всплывающего окна
Исключение:
IllegalStateException - если всплывающее окно уже закрыто

createGraphics

public Graphics2D createGraphics() throws IllegalStateException
Создает контекст графики (как объект Graphics2D) для наложения изображения всплывающего окна, что позволяет накладывать рисунки поверх всплывающего окна. Обратите внимание, что вы рисуете не на основном изображении, а на изображении, отображаемом поверх основного изображения с использованием альфа-смешения. Также обратите внимание, что рисование на наложенном изображении не обязательно обновляет содержимое окна всплывающего окна. Вы должны вызвать update() на SplashScreen, когда вы хотите, чтобы всплывающее окно было обновлено немедленно.

Точка (0, 0) в пространстве координат контекста графики соответствует началу границ окна всплывающего окна (см. getBounds()).

Возвращает:
контекст графики для поверхностного наложения всплывающего окна
Исключение:
IllegalStateException - если всплывающее окно уже закрыто

update

public void update() throws IllegalStateException
Обновляет окно всплывающего окна текущим содержимым наложенного изображения.
Исключение:
IllegalStateException - если наложенное изображение отсутствует; например, если createGraphics никогда не вызывался или если всплывающее окно уже закрыто

close

public void close() throws IllegalStateException
Скрывает всплывающее окно, закрывает окно и освобождает все связанные ресурсы.
Исключение:
IllegalStateException - если всплывающее окно уже закрыто

isVisible

public boolean isVisible()
Определяет, отображается ли всплывающее окно. Всплывающее окно может быть скрыто с помощью close(), оно также скрывается автоматически, когда первое окно AWT/Swing становится видимым.

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

Возвращает:
true, если всплывающее окно отображается (еще не закрыто), false в противном случае

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.desktop/java/awt/SplashScreen.html

Spec-Zone.ru

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