|
Spec-Zone .ru
спецификации, руководства, описания, API
|
Почти у всех современных приложений есть экран-заставка. Обычно экраны-заставки используются в следующих целях:
Java Foundation Classes, и Swing и Абстрактный Инструментарий Работы с окнами (AWT), позволяют разработчику создать экраны-заставки в технологических приложениях Java. Однако, потому что основная цель экрана-заставки состоит в том, чтобы предоставить пользователю обратную связь о запуске приложения, задержка между запуском приложения и момент, когда экран-заставка раскрывается, должна быть минимальной. Прежде, чем экран-заставка может раскрыться, приложение должно загрузить и инициализировать Виртуальную машину Java™ (JVM), AWT, Swing, и иногда зависящие от приложения библиотеки также. Получающаяся задержка нескольких секунд сделала использование основанного на технологии экрана-заставки Java™ менее чем требуемым.
К счастью, Java™ SE 6 обеспечивает решение, которое позволяет приложению выводить на экран экран-заставку намного ранее, даже прежде, чем виртуальная машина запустится. Средство запуска приложения Java в состоянии декодировать изображение и вывести на экран его в простом неукрашенном окне.
Экран-заставка может вывести на экран любого gif, png, или jpeg изображение, с прозрачностью, полупрозрачностью, и анимацией. Число ниже представляет пример экрана-заставки приложения Java, разработанного как анимированный gif файл.

SplashScreen class используется, чтобы закрыть экран-заставку, изменить изображение экрана-заставки, получить позицию изображения или размер, и краску в экране-заставке. Приложение не может создать экземпляр этого class. Только единственный экземпляр, создаваемый в пределах этого class, может существовать, и этот экземпляр может быть получен, используя getSplashScreen() статический метод. Если приложение не создало экран-заставку при запуске через опцию командной строки или файла манифеста, getSplashScreen метод возвращает нуль.
Как правило, разработчик хочет сохранить изображение экрана-заставки на экране и вывести на экран что-то по изображению. У окна экрана-заставки есть оверлейная поверхность с альфа-каналом, и к этой поверхности можно получить доступ с традиционным Graphics2D интерфейс.
Следующий фрагмент кода показывает, как получить a SplashScreen объект, тогда как создать графический контекст с createGraphics() метод:
...
final SplashScreen splash = SplashScreen.getSplashScreen();
if (splash == null) {
System.out.println("SplashScreen.getSplashScreen() returned null");
return;
}
Graphics2D g = splash.createGraphics();
if (g == null) {
System.out.println("g is null");
return;
}
...
Найдите полный код демонстрационного примера в SplashDemo.java файл.
Использование приложения SplashDemo фиксированные координаты, чтобы вывести на экран информацию об оверлеи. Эти координаты являются зависимыми от изображения и расчетными индивидуально для каждого экрана-заставки.
Собственный экран-заставка может быть выведен на экран следующими способами:
Чтобы вывести на экран экран-заставку из командной строки используют -splash: параметр командной строки. Этим параметром является опция средства запуска приложения Java, которая выводит на экран экран-заставку:
java -splash:<file name> <class name>
SplashDemo.java файл.splash.gif изображение в images каталог.java -splash:images/splash.gif SplashDemo
nnn.gif. Запустите приложение следующим образом: java -splash:images/nnn.gif SplashDemo
SplashScreen.getSplashScreen() returned null
Если Ваше приложение упаковывается в файле JAR, можно использовать SplashScreen-Image опция в файле манифеста, чтобы показать экран-заставку. Поместите изображение в файл JAR и определите путь в опции следующим образом:
Manifest-Version: 1.0 Main-Class: <class name> SplashScreen-Image: <image name>
SplashDemo.java файл.splash.gif изображение в images каталог.splashmanifest.mf файл следующим образом: Manifest-Version: 1.0 Main-Class: SplashDemo SplashScreen-Image: images/splash.gif
jar cmf splashmanifest.mf splashDemo.jar SplashDemo*.class images/splash.gif
java -jar splashDemo.jar
SplashScreen class не может использоваться, чтобы создать экран-заставку. Только единственный экземпляр, создаваемый в пределах этого class, может существовать.
| Метод | Цель |
|---|---|
| getSplashScreen () | Возвраты SplashScreen объект, используемый для Java, запускает управление экраном-заставкой. |
|
|
Создает графический контекст (как a Graphics2D объект), поскольку экран-заставка накладывают изображение, которое позволяет Вам дистиллировать экран-заставку. |
|
|
Возвращает границы окна экрана-заставки как a Rectangle. |
|
|
Закрывает экран-заставку и высвобождает все связанные средства. |
Следующая таблица приводит пример, который использует экран-заставку.
| Пример | Где Описано | Примечания |
|---|---|---|
SplashDemo |
Этот раздел | Показывает экран-заставку прежде, чем открыть окно приложения. |