Python 如何检测打印机是否与pyqt连接?
我正在用Linux编写一个windows应用程序。现在我需要一个解决方案来检测默认打印机是否已连接。 我有下一个代码:Python 如何检测打印机是否与pyqt连接?,python,printing,pyqt4,Python,Printing,Pyqt4,我正在用Linux编写一个windows应用程序。现在我需要一个解决方案来检测默认打印机是否已连接。 我有下一个代码: def mPrint(self, value): font = QFont() font.setPointSize(10) self.mEditor = QTextEdit() self.mEditor.setFont(font) self.printer = QPrinter(QPrinterInfo.defaultPrinter(
def mPrint(self, value):
font = QFont()
font.setPointSize(10)
self.mEditor = QTextEdit()
self.mEditor.setFont(font)
self.printer = QPrinter(QPrinterInfo.defaultPrinter())
self.printer.setColorMode(QPrinter.GrayScale)
self.printer.setPageMargins(7, 20, 7, 7, QPrinter.Millimeter)
self.printer.setOrientation(QPrinter.Portrait)
try:
if value == 1:
self.printCommand()
else:
self.printDelivery()
except self.printer.Error as e:
print(e)
使用QPrinterInfo,我可以获得默认打印机并知道它是否存在
QPrinterInfo.defaultPrinter().isNull()
但它总是返回true,因为我的电脑中有一台默认打印机,但如果它没有连接,所有内容都将进入打印机队列
有人知道如何识别打印机是否已连接,以及在出现异常时如何显示Qmessage吗?我找到了一个解决方案:
self.mEditor = QTextEdit()
self.mEditor.setFont(font)
self.printer = QPrinter(QPrinterInfo.defaultPrinter())
self.mEditor.document().print_(self.printer)
如果
QPrinter.printerState()
没有返回有用的内容,我建议您查看其他Python库,您可以使用这些库来检查打印机状态。我尝试使用printerState(),但始终返回0