Java printDialog在第一次调用时需要很长时间才能显示

Java printDialog在第一次调用时需要很长时间才能显示,java,printdialog,Java,Printdialog,我使用默认代码从Java打印(如下)。 问题是,当第一次调用该对话框时,显示该对话框需要10秒以上。 如果再次调用,它会很快弹出。。。 有没有办法解决这个问题??或者,当应用程序启动时,可以无声地调用它??调用可能需要很长时间的特殊方法???感谢您的帮助! 代码: 它可能试图解析可用打印机的列表。你有网络连接的打印机吗?@MadProgrammer,我配置了无线打印机,但处于脱机状态。我并不总是用它。每次我需要使用它时,我都必须连接到它自己的无线网络,这会让我离线。我正在尝试打印到cups pd

我使用默认代码从Java打印(如下)。 问题是,当第一次调用该对话框时,显示该对话框需要10秒以上。 如果再次调用,它会很快弹出。。。 有没有办法解决这个问题??或者,当应用程序启动时,可以无声地调用它??调用可能需要很长时间的特殊方法???感谢您的帮助! 代码:


它可能试图解析可用打印机的列表。你有网络连接的打印机吗?@MadProgrammer,我配置了无线打印机,但处于脱机状态。我并不总是用它。每次我需要使用它时,我都必须连接到它自己的无线网络,这会让我离线。我正在尝试打印到cups pdfYou肯定是对的@MadProgrammer,当我禁用打印机时,对话框马上弹出。。你认为我应该在程序启动时调用一些函数来解析列表吗?不要认为你可以调用任何函数,这是通过操作系统调用来解析的。你可以看看API,它可能会为你提供更多选择的能力,但归根结底,这是一个操作系统的问题。。。
PrinterJob job = PrinterJob.getPrinterJob();
job.setPrintable(this);
if (job.printDialog() == true) {
    try {
        job.print();
    } catch (PrinterException ex) { }
}