我是python的新手,我从不同的资源中学习 我试图使用PYQT5打印支持,但我得到了错误,我尽我所能从谷歌解决这个问题,但我没有找到解决办法,所以我问这个问题在这里请 下面是我的代码
from PyQt5 import QtCore, QtGui, QtWidgets ,QtPrintSupport
class Ui_Form(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(615, 356)
self.frame = QtWidgets.QFrame(Form)
self.frame.setGeometry(QtCore.QRect(10, 10, 571, 301))
self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel)
self.frame.setFrameShadow(QtWidgets.QFrame.Raised)
self.frame.setObjectName("frame")
self.textEdit = QtWidgets.QTextEdit(self.frame)
self.textEdit.setGeometry(QtCore.QRect(100, 10, 331, 71))
self.textEdit.setObjectName("textEdit")
self.tableWidget = QtWidgets.QTableWidget(self.frame)
self.tableWidget.setGeometry(QtCore.QRect(30, 90, 521, 121))
self.tableWidget.setObjectName("tableWidget")
self.tableWidget.setColumnCount(3)
self.tableWidget.setRowCount(3)
item = QtWidgets.QTableWidgetItem()
self.tableWidget.setVerticalHeaderItem(0, item)
item = QtWidgets.QTableWidgetItem()
self.tableWidget.setVerticalHeaderItem(1, item)
item = QtWidgets.QTableWidgetItem()
self.tableWidget.setVerticalHeaderItem(2, item)
item = QtWidgets.QTableWidgetItem()
self.tableWidget.setHorizontalHeaderItem(0, item)
item = QtWidgets.QTableWidgetItem()
self.tableWidget.setHorizontalHeaderItem(1, item)
item = QtWidgets.QTableWidgetItem()
self.tableWidget.setHorizontalHeaderItem(2, item)
self.pushButton = QtWidgets.QPushButton(self.frame)
self.pushButton.setGeometry(QtCore.QRect(240, 250, 91, 41))
self.pushButton.setObjectName("pushButton")
self.pushButton.clicked.connect(self.print)
item.setText(_translate("Form", "New Column"))
self.pushButton.setText(_translate("Form", "Print"))
def print (self):
dialog = QtPrintSupport.QPrintDialog()
if dialog.exec_() == QtWidgets.QDialog.Accepted:
self.frame().print_(dialog.printer())
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
Form = QtWidgets.QWidget()
ui = Ui_Form()
ui.setupUi(Form)
Form.show()
sys.exit(app.exec_())
我得到了这个错误
^{pr2}$请告诉我解决方案,因为我是python新手 提前谢谢
您的代码有几个问题:
()
,如果它是类的话。在print_
方法,只有QTextEdit和一些类有它,一般情况下应该使用qpaint。在综合以上考虑,解决方案如下:
相关问题 更多 >
编程相关推荐