我正在尝试添加一种将 sqlite3 数据库中的数据导出到 pdf 文档的方法。在《使用 python 和 Qt 进行快速 gui 编程》一书中,它说我可以将 QTextDocuments 导出为 pdf 文件。但是它需要采用 QTextDocument 的形式。目前,我一直在尝试将表的一串标题转换为 pdf 文档作为测试,但是当它空闲运行时,它会重新启动。
import sqlite3
from PyQt5 import QtWidgets, QtCore, QtGui
class Report(QtWidgets.QWidget):
def __init__(self,text):
super(Report,self).__init__()
self.textArea = QTextEdit(self)
self.cursor = QTextCursor(self.textArea.document())
self.cursor.insertText(text)
def createTextReport(fileName):
headings = ('|%10s|'%'AssetID' + '|%40s|'%'Description' + '|%40s|'%'Room Description' + '|%5s|'%'Labelled' + '|%10s|'%'Condition')
report = Report(headings)
printer = QPrinter()
printer.setPageSize(QPrinter.Letter)
printer.setOutputFormat(QPrinter.PdfFormat)
printer.setOutputFileName('C:/Users/Luke/Documents/A-Level-Work/A2/Computing/COMP 4/Program/report.pdf')
report.print_(printer)
fileName = 'C:/Users/Luke/Documents/A-Level-Work/A2/Computing/COMP 4/Program/test_database.db'
createTextReport(fileName)
我想知道我哪里出错了,还有一种简单的方法可以将 SQL 查询中的数据转换为 QTextDocument 格式的表格,因此我不必手动格式化它。由于我的编程知识非常有限,请简单解释一下。