Класс ServiceUI
public class ServiceUI extends Object
Диалоговые окна следуют стандартному шаблону: позволяют пользователю продолжить или отменить операцию, выбрать службу печати и задать такие параметры, как размер бумаги и количество копий.
Диалоговые окна предназначены для работы с подключаемыми службами печати через их открытые API.
Если служба печати предоставляет расширения поставщика, они могут быть доступны пользователю на панели вкладок, предоставленной поставщиком Component. Рекомендуется реализовывать такие расширения поставщика с помощью Swing! и поддерживать API специальных возможностей. Расширения поставщика должны возвращать настройки как часть AttributeSet. Приложениям, которым необходимо сохранять настройки пользователя, следует использовать эти настройки для задания задания печати. Обратите внимание, что на этот класс нет ссылок из других частей Java Print Service, и он может отсутствовать в профилях, которые не могут зависеть от наличия пакетов AWT.
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
ServiceUI() |
Создает ServiceUI. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
static PrintService |
printDialog |
Отображает диалоговое окно, в котором пользователь может выбрать службу печати (принтер). |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
boolean |
equals |
Указывает, равен ли этот объект какому-либо другому объекту. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удален в одной из будущих версий. Финализация устарела и будет удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного времени. |
Подробное описание конструкторов
ServiceUI
public ServiceUI()
ServiceUI.Подробное описание методов
printDialog
public static PrintService printDialog(GraphicsConfiguration gc, int x, int y, PrintService[] services, PrintService defaultService, DocFlavor flavor, PrintRequestAttributeSet attributes) throws HeadlessException
Диалоговое окно может содержать панель вкладок с пользовательским интерфейсом, получаемым по запросу из PrintService's ServiceUIFactory при просмотре PrintService. Сначала диалоговое окно попытается найти MAIN_UIROLE в роли JComponent, а затем в роли Panel. Если ServiceUIFactory отсутствует или не найдена подходящая роль, пользовательская вкладка будет пустой или невидимой.
Диалоговое окно возвращает выбранную пользователем службу печати, если пользователь нажимает «ОК», и null, если пользователь отменяет диалоговое окно.
Приложение должно передать массив служб печати для просмотра. Массив должен быть non-null и непустым. Обычно приложение передает только PrintServices, способные печатать документ заданного формата.
Приложение может передать PrintService для первоначального отображения. Параметр non-null должен входить в массив доступных для просмотра служб. Если этот параметр равен null, реализация выбирает службу самостоятельно.
При необходимости приложение может передать формат документа для печати. Если он равен non-null, варианты, предлагаемые пользователю, можно точнее проверить на соответствие форматам, поддерживаемым службами. Приложение должно передать PrintRequestAttributeSet для возврата вариантов пользователя. При вызове PrintRequestAttributeSet может быть пустым или содержать значения, заданные приложением.
Они используются для задания начальных параметров первоначально отображаемой службы печати. Значения, не поддерживаемые службой печати, игнорируются. Когда пользователь просматривает службы печати, атрибуты и значения копируются в новую отображаемую службу. Если пользователь выбирает службу печати, которая не поддерживает определенную пару атрибут-значение, в качестве нового копируемого значения используется значение по умолчанию для этой службы.
Если пользователь отменяет диалоговое окно, возвращенные атрибуты не будут отражать внесенные пользователем изменения.
Пример простого использования этого метода:
PrintService[] services = PrintServiceLookup.lookupPrintServices(
DocFlavor.INPUT_STREAM.JPEG, null);
PrintRequestAttributeSet attributes = new HashPrintRequestAttributeSet();
if (services.length > 0) {
PrintService service = ServiceUI.printDialog(null, 50, 50,
services, services[0],
null,
attributes);
if (service != null) {
... print ...
}
}
- Параметры:
-
gc— используется для выбора экрана;nullозначает основной экран или экран по умолчанию -
x— координата диалогового окна, включая рамку, в экранных координатах относительно начала координатgc -
y— координата диалогового окна, включая рамку, в экранных координатах относительно начала координатgc -
services— доступные для просмотра; должны бытьnon-null -
defaultService— начальныйPrintServiceдля отображения -
flavor— формат документа для печати илиnull -
attributes— при вводе содержит начальные настройки, предоставленные приложением. Не может бытьnull, но может быть пустым. При выводе атрибуты отражают изменения, внесенные пользователем. - Возвращает:
- службу печати, выбранную пользователем, или
null, если пользователь отменил диалоговое окно - Исключения:
-
HeadlessException— еслиGraphicsEnvironment.isHeadless()возвращаетtrue -
IllegalArgumentException— если services равенnullили пуст, attributes равенnullлибо начальныйPrintServiceотсутствует в списке доступных для просмотра служб
© 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.