如何在java fx和print节点中显示打印对话框

Whi*_*e H 2 javafx

我想在打印前显示一个对话框,以便用户可以选择他们喜欢的打印机,如果可能的话也可以更改页面设置,我在桌面环境中使用Java 8更新31(Windows 8 64位),我当前的代码如下这个

Node node = new Circle(100, 200, 200);
PrinterJob job = PrinterJob.createPrinterJob();
if (job != null) {
boolean success = job.printPage(node);
if (success) {
    job.endJob();
}
}
Run Code Online (Sandbox Code Playgroud)

Ita*_*iha 11

您可以使用PrinterJob 的showPrintDialog方法.

PrinterJob job = PrinterJob.createPrinterJob();
if (job != null && job.showPrintDialog(node.getScene().getWindow())){
    boolean success = job.printPage(node);
    if (success) {
        job.endJob();
    }
}
Run Code Online (Sandbox Code Playgroud)