我的javafxml文件中有一个名为 receiptPane 的窗格。我喜欢打印此窗格,因为它包含表格视图和标签。 我知道如何打印节点,但是以某种方式我无法弄清楚它是否可以打印窗格。 如果我在此处放置任何节点都可以工作,它将打印该节点。但是,如果我将窗格放在这里,它不会打印出来。
@FXML
public void print() {
// Create a printer job for the default printer
PrinterJob job = PrinterJob.createPrinterJob();
if (job != null && job.showPrintDialog(receiptPane.getScene().getWindow())){
boolean success = job.printPage(receiptPane);
if (success) {
job.endJob();
}
}
}
任何帮助表示赞赏。 谢谢
答案 0 :(得分:0)
自从我提出问题以来,我一直在试图找出问题所在。 这就是为什么我得到空白打印的原因。 通常它正在打印,但它正在打印空白。因此,我尝试创建该窗格的实例并将所有这些节点添加到其中。 通常会添加它,但是我是在Scene Builder中完成的。我认为那是我的问题。
所以,解决方案在下面;
receiptPane = new Pane();
receiptPane.getChildren().addAll(totalL,
tAmountL,
dateTimeL,
orderIDL,
compNameL,
compAddress1L,
compAddress2L,
thanksL,
paymentType1L,
paymentTypeAmount1L,
dueL,
dueAmountL,
ordReceipts
);
PrinterJob job = PrinterJob.createPrinterJob();
if (job != null && job.showPrintDialog(receiptPane.getScene().getWindow())){
boolean success = job.printPage(receiptPane);
if (success) {
job.endJob();
}
}
现在,它可以工作了。
感谢任何有兴趣的人。