Spec-Zone.ru › OpenJDK 25

Класс ServiceUIFactory

java.lang.Object
javax.print.ServiceUIFactory
public abstract class ServiceUIFactory extends Object
Службы могут при необходимости предоставлять пользовательские интерфейсы, позволяющие использовать разные варианты взаимодействия для разных ролей. Одна роль может предусматривать просмотр и настройку параметров печати конечным пользователем. Другая — администрирование службы печати.

Хотя API службы печати в настоящее время не обеспечивает стандартной поддержки администрирования службы печати, мониторинг службы печати возможен, а пользовательский интерфейс может предоставлять собственные механизмы обновления.

Основная цель проектирования — позволить приложениям находить и инициализировать службы по мере необходимости и только тогда, когда они нужны, без зависимостей от API, за исключением среды, в которой они используются.

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

Пример использования:

 ServiceUIFactory factory = printService.getServiceUIFactory();
 if (factory != null) {
     JComponent swingui = (JComponent)factory.getUI(
                                        ServiceUIFactory.MAIN_UIROLE,
                                        ServiceUIFactory.JCOMPONENT_UI);
     if (swingui != null) {
         tabbedpane.add("Custom UI", swingui);
     }
 }

Краткое описание полей

Модификатор и тип Поле Описание
static final int ABOUT_UIROLE
Обозначает пользовательский интерфейс, выполняющий информационную роль «О программе».
static final int ADMIN_UIROLE
Обозначает пользовательский интерфейс, выполняющий административную роль.
static final String DIALOG_UI
Обозначает пользовательский интерфейс, реализованный в виде диалогового окна AWT.
static final String JCOMPONENT_UI
Обозначает пользовательский интерфейс, реализованный в виде компонента Swing.
static final String JDIALOG_UI
Обозначает пользовательский интерфейс, реализованный в виде диалогового окна Swing.
static final int MAIN_UIROLE
Обозначает пользовательский интерфейс, выполняющий обычную роль конечного пользователя.
static final String PANEL_UI
Обозначает пользовательский интерфейс, реализованный в виде панели AWT.
static final int RESERVED_UIROLE
Не является допустимой ролью, однако идентификаторы ролей, превышающие это значение, могут использоваться для частных ролей, поддерживаемых службой.

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

ServiceUIFactory()
Модификатор Конструктор Описание
protected
Конструктор для вызова подклассами.

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

Модификатор и тип Метод Описание
abstract Object getUI(int role, String ui)
Получает объект пользовательского интерфейса, который приложение может привести к запрошенному типу и использовать в своем пользовательском интерфейсе.
abstract String[] getUIClassNamesForRole(int role)
Для роли пользовательского интерфейса, полученной от этой фабрики, получает типы пользовательского интерфейса, доступные в этой фабрике и реализующие эту роль.

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

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

Подробное описание полей

JCOMPONENT_UI

public static final String JCOMPONENT_UI
Обозначает пользовательский интерфейс, реализованный в виде компонента Swing. Значение строки — полное имя класса: "javax.swing.JComponent".
См. также:
  • Значения констант полей

PANEL_UI

public static final String PANEL_UI
Обозначает пользовательский интерфейс, реализованный в виде панели AWT. Значение строки — полное имя класса: "java.awt.Panel"
См. также:
  • Значения констант полей

DIALOG_UI

public static final String DIALOG_UI
Обозначает пользовательский интерфейс, реализованный в виде диалогового окна AWT. Значение строки — полное имя класса: "java.awt.Dialog"
См. также:
  • Значения констант полей

JDIALOG_UI

public static final String JDIALOG_UI
Обозначает пользовательский интерфейс, реализованный в виде диалогового окна Swing. Значение строки — полное имя класса: "javax.swing.JDialog"
См. также:
  • Значения констант полей

ABOUT_UIROLE

public static final int ABOUT_UIROLE
Обозначает пользовательский интерфейс, выполняющий информационную роль «О программе».
См. также:
  • Значения констант полей

ADMIN_UIROLE

public static final int ADMIN_UIROLE
Обозначает пользовательский интерфейс, выполняющий административную роль.
См. также:
  • Значения констант полей

MAIN_UIROLE

public static final int MAIN_UIROLE
Обозначает пользовательский интерфейс, выполняющий обычную роль конечного пользователя.
См. также:
  • Значения констант полей

RESERVED_UIROLE

public static final int RESERVED_UIROLE
Не является допустимой ролью, однако идентификаторы ролей, превышающие это значение, могут использоваться для частных ролей, поддерживаемых службой. Чтобы правильно использовать такую роль, необходимо знать, какую функцию она выполняет.
См. также:
  • Значения констант полей

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

ServiceUIFactory

protected ServiceUIFactory()
Конструктор для вызова подклассами.

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

getUI

public abstract Object getUI(int role, String ui)
Получает объект пользовательского интерфейса, который приложение может привести к запрошенному типу и использовать в своем пользовательском интерфейсе.
Параметры:
role — запрошенная роль. Должна быть одной из стандартных ролей или частной ролью, поддерживаемой этой фабрикой.
ui — тип, для которого запрашивается роль
Возвращает:
роль пользовательского интерфейса или null, если запрошенная роль пользовательского интерфейса недоступна в этой фабрике
Вызывает:
IllegalArgumentException — если роль или пользовательский интерфейс не являются ни одной из стандартных сущностей и не поддерживаются фабрикой как частные

getUIClassNamesForRole

public abstract String[] getUIClassNamesForRole(int role)
Для роли пользовательского интерфейса, полученной от этой фабрики, получает типы пользовательского интерфейса, доступные в этой фабрике и реализующие эту роль. Возвращаемый Strings должен ссылаться на статические переменные, определенные в этом классе, чтобы приложения могли сравнивать ссылки на равенство ("==").
Параметры:
role — роль для поиска
Возвращает:
типы пользовательского интерфейса, поддерживаемые этим классом для указанной роли, null, если для этой роли нет доступных пользовательских интерфейсов
Вызывает:
IllegalArgumentException — если роль является нестандартной и не поддерживается этой фабрикой

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков с концептуальными обзорами, определениями терминов, обходными решениями и примерами работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/javax/print/ServiceUIFactory.html

Spec-Zone.ru

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