我需要知道我的打印机何时完成打印文档。在这个特殊情况下,我使用QT 5.2和Qprinter类,但我不知道我可以在哪里完成事件。我在Windows 7/8计算机上,也许这个想法是使用打印机队列..请一些想法?
答案 0 :(得分:1)
没有准确的方法来检测打印机的状态,因为某些打印机无法向操作系统报告其状态。
但您可以通过以下方式获取打印机的当前状态:
PrinterState QPrinter::printerState() const
返回空闲,活动,中止和错误。我想如果打印机状态从Active变为Idle,那么作业就完成了。因此,您可以定期检查计时器事件中的打印机状态,如果状态从“活动”变为“空闲”,则可以发出一个信号,表明打印已完成: