Класс ServiceUI
public class ServiceUI extends Object
Диалоги следуют стандартному шаблону, действуя как опции «Продолжить»/«Отменить» для пользователя, а также позволяя пользователю выбрать службу печати и указать такие параметры, как размер бумаги и количество копий.
Диалоги разработаны для работы со службами печати с подключаемыми модулями через публичные API этих служб печати.
Если служба печати предоставляет какие-либо расширения поставщика, они могут быть предоставлены пользователю с помощью панели вкладок, предоставленной поставщиком Component. Такое расширение поставщика рекомендуется использовать Swing! и поддерживать его API доступности. Расширения поставщиков должны возвращать настройки в рамках AttributeSet. Приложения, которые хотят сохранить настройки пользователя, должны использовать эти настройки для указания задания печати. Обратите внимание, что этот класс не ссылается на какую-либо другую часть службы печати Java и может не включаться в профили, которые не могут зависеть от наличия пакетов AWT.
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
ServiceUI() |
Создает ServiceUI. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
static PrintService |
printDialog |
Отображает диалог для пользователя для выбора службы печати (принтера). |
Подробное описание конструкторов
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 пустой или пустой, или attributes не определено, или начальная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.
https://download.java.net/java/early_access/jdk24/docs/api/java.desktop/javax/print/ServiceUI.html