zjl50
zyzszgj
采纳率0%
2017-08-10 13:58

PYQT 中打印预览显示问题?

10
  • 对话框
  • pyqt
  • qt

最近尝试使用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_()

此时我电脑没有连接任何实际的打印设备。
代码运行结果如下:
能显示打印预览对话框,同时能显示内容页面。

图片说明

但我在电脑中添加实际的打印机后,再次运行:
只有打印预览对话框,无显示页面内容.
图片说明

我删掉安装的打印机后,运行代码,又能正常显示。
现在非常疑惑, 如何解决此问题?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答