public class ServiceUI extends Object
ダイアログは標準パターンに準拠し、ユーザーに対して「継続」や「取消し」オプションを提供します。また、ユーザーは、このダイアログを使用して印刷サービスを選択し、用紙サイズやコピー部数などを指定できます。
ダイアログは、これらの印刷サービスのpublic APIを介して、プラグイン可能な印刷サービスと協調動作するように設計されています。
印刷サービスがどれかのベンダー拡張機能を提供する場合、ベンダーの提供するタブ・パネルComponentを使用してこれらの機能にアクセス可能になります。このようなベンダー拡張機能では、Swing!の使用およびそのAccessibility APIのサポートが推奨されています。ベンダー拡張機能は、設定をAttributeSetの一部として返す必要があります。ユーザー設定を保存するアプリケーションは、これらの設定を使用して印刷ジョブを指定する必要があります。このクラスが、Java Print Serviceの他の部分から参照されることはありません。また、AWTパッケージの存在に依存できないプロファイルに、このクラスを含めることはできません。
コンストラクタと説明 |
---|
ServiceUI() |
修飾子と型 | メソッドと説明 |
---|---|
static PrintService |
printDialog(GraphicsConfiguration gc, int x, int y, PrintService[] services, PrintService defaultService, DocFlavor flavor, PrintRequestAttributeSet attributes)
印刷サービス(プリンタ)選択用ダイアログをユーザーに提供します。
|
public static PrintService printDialog(GraphicsConfiguration gc, int x, int y, PrintService[] services, PrintService defaultService, DocFlavor flavor, PrintRequestAttributeSet attributes) throws HeadlessException
ダイアログには、PrintServiceのブラウズ時にPrintServiceのServiceUIFactoryから遅れて取得されたカスタムUIを保持するタブ・パネルを含めることができます。ダイアログは、MAIN_UIROLEの検出を最初にJComponentとして、次にPanelとして試みます。ServiceUIFactoryが存在しないか、一致するロールが存在しない場合、カスタム・タブは空または非表示になります。
ダイアログで「OK」を選択すると、ユーザーが選択した印刷サービスが返されます。ダイアログで「取消し」を選択すると、nullが返されます。
アプリケーションは、ブラウズする印刷サービスの配列を渡す必要があります。配列はnullまたは空以外である必要があります。通常、アプリケーションは、特定のドキュメント・フレーバの印刷機能を持つPrintServiceだけを渡します。
アプリケーションは、最初に表示するPrintServiceを渡すことができます。nullでないパラメータを、ブラウズ可能なサービスの配列に含める必要があります。このパラメータがnullの場合、サービスが実装により選択されます。
アプリケーションは、印刷するフレーバをオプションで渡すこともできます。これが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
- スクリーン座標内の境界を含むダイアログの位置y
- スクリーン座標内の境界を含むダイアログの位置services
- ブラウズ可能であるためには、null以外でなければならない。defaultService
- 最初に表示するPrintService。flavor
- 印刷するフレーバ、またはnull。attributes
- 入力時は、初期アプリケーションの提供する設定。これは、nullであってはならないが、空は許可される。出力時は、ユーザーによる変更を属性に反映される。HeadlessException
- GraphicsEnvironment.isHeadless()がtrueを返した場合。IllegalArgumentException
- サービスがnullまたは空の場合、属性がnullの場合、または初期PrintServiceがブラウズ可能なサービスのリストに存在しない場合。 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.