使用javafx PrinterJob打印ListView

时间:2018-06-06 09:55:27

标签: javafx

当我尝试默认打印ListView时使用JavaFX打印机作业它将拍摄快照,它会将ListView保存为pdf文件,但是当你向下滚动ListView时会出现的附加数据,它是如何打印的?我的要求是打印在JavaFX的ListView中添加的所有字符串值

1 个答案:

答案 0 :(得分:0)

//创建按钮,它将打印在文本区域中生成的字符串:

 Button printTextBtn = new Button("Print Text");

//为按钮设置事件处理程序:

printTextBtn.setOnAction(e -> print(text)); 

// text是文本区域的对象示例:TextArea text = new TextArea(); //在从filechooser中选择后,您将在(文本)的位置使用您的列表对象

//这是一个在单击按钮时将调用的方法。

private void print(Node node) {


  System.out.println("Creating a printer job...");

    PrinterJob job = PrinterJob.createPrinterJob();
    if (job != null) {
      System.out.println(job.jobStatusProperty().asString());

      boolean printed = job.printPage(node);
      if (printed) {
        job.endJob();
      } else {
        System.out.println("Printing failed.");
      }
    } else {
      System.out.println("Could not create a printer job.");
    }

  }