最近尝试使用QT 的打印预览功能:
部分代码如下:
def printHtml(self, printer):
html = """<html>
<head></head>
<body>
<h1>55555</h1><b>bold</b>
<h1>55555</h1><b>bold</b>
<h1>55555</h1><b>bold</b>
<h1>55555</h1><b>bold</b>
<h1>55555</h1><b>bold</b>
<h1>55555</h1><b>bold</b>
<h1>55555</h1><b>bold</b>
<h1>55555</h1><b>bold</b>
</body>
</html>"""
textDocument = QtGui.QTextDocument()
textDocument.setHtml(html)
textDocument.print_(printer)
def on_pushButton_print_4_clicked(self):
"""
Slot documentation goes here.
"""
printer =QtGui.QPrinter(QtGui.QPrinter.HighResolution)
#/* 打印预览 */
preview =QtGui.QPrintPreviewDialog(printer,self )
preview.paintRequested.connect(self.printHtml)
#
# 显示 预览框
#
#preview.exec()
preview.exec_()
此时我电脑没有连接任何实际的打印设备。
代码运行结果如下:
能显示打印预览对话框,同时能显示内容页面。
但我在电脑中添加实际的打印机后,再次运行:
只有打印预览对话框,无显示页面内容.
我删掉安装的打印机后,运行代码,又能正常显示。
现在非常疑惑, 如何解决此问题?