0

SWT PrintDialogを使用して、ローカルプリンターを表示し、選択したプリンター値を返すことはできますか?

私には自分に合った印刷クラスがあります。次の変数をクラスに渡します。

文字列filePath文字列printerName文字列jobName

GUIクラスからPrintクラスを次のように呼び出します。

new AplotPdfPrintLocal().printPDF("c:\\Temp\\test.pdf", "\\\\PrintServer\\MyPrinter","PDF Print Job");

現在、呼び出しはデフォルトのプリンタを通過しています。

上記の呼び出しの前に、ローカルプリンターダイアログ(PrintDialogなど)を開くと便利です。ローカルプリンターを選択してから、選択したプリンター値で印刷クラスを呼び出すことができます。PrintDialogではなく、PrintClassに印刷アクションを実行させたいと思います。

PrintDialogでOKボタンを押すと、次のような擬似コードを実行すると思っていました。

public void widgetSelected(SelectionEvent e) {
   new AplotPdfPrintLocal().printPDF("c:\\Temp\\test.pdf", "SelectedPrinterValue","PDF Print Job");
}

これは可能ですか?
このアクションを実行するためのより良い方法はありますか?

ローカルプリンターを検索する方法があることを知っています(PrinterJob.lookupPrintServices())。しかし、私は本当にその周りに新しいダイアログを書く必要はありません。むしろ、PrintDialogのような事前に作成された既存のダイアログを使用したいと思います。

4

1 に答える 1

1

PrintDialogネイティブの印刷オプションを提供します。使用したくない場合はPrintDialog、すべての印刷オプション(PrintDataおよびPrintDialogに表示される他の用紙オプションなど)を設定することになります。

印刷オプションで定義PrintDataし、Printer(printerdata)を作成して、印刷ジョブを開始します。

于 2012-11-17T00:50:33.387 に答える