def handlePreview(self): dialog = QPrintPreviewDialog() icon = QIcon() icon.addPixmap(QPixmap(":/QIcon/Backup/iconn.png"), QIcon.Normal, QIcon.Off) dialog.setWindowIcon(icon) dialog.setWindowTitle("پیش نمایش چاپ") dialog.paintRequested.connect(self.handlePaintRequest) dialog.setWindowFlags(Qt.WindowStaysOnTopHint) dialog.exec_()
def vistaPrevia(self): if not self.documento.isEmpty(): impresion = QPrinter(QPrinter.HighResolution) vista = QPrintPreviewDialog(impresion, self) vista.setWindowTitle("предварительный просмотр") vista.setWindowFlags(Qt.Window) vista.resize(800, 600) exportarPDF = vista.findChildren(QToolBar) exportarPDF[0].addAction(QIcon("exportarPDF.png"), "Экспорт в PDF", self.exportarPDF) vista.paintRequested.connect(self.vistaPreviaImpresion) vista.exec_() else: QMessageBox.critical(self, "предварительный просмотр", "Нет данных для отображения. ", QMessageBox.Ok)
def vistaPrevia(self): if not self.documento.isEmpty(): impresion = QPrinter(QPrinter.HighResolution) vista = QPrintPreviewDialog(impresion, self) vista.setWindowTitle("Vista previa") vista.setWindowFlags(Qt.Window) vista.resize(800, 600) exportarPDF = vista.findChildren(QToolBar) exportarPDF[0].addAction(QIcon("exportarPDF.png"), "Exportar a PDF", self.exportarPDF) vista.paintRequested.connect(self.vistaPreviaImpresion) vista.exec_() else: QMessageBox.critical(self, "Vista previa", "No hay datos para visualizar. ", QMessageBox.Ok)
def view(self): #Vista previa if not self.document.isEmpty(): impres = QPrinter(QPrinter.HighResolution) var_view = QPrintPreviewDialog(impres, self) var_view.setWindowTitle("Vista previa") var_view.setWindowFlags(Qt.Window) var_view.resize(800, 600) exportarPDF = var_view.findChildren(QToolBar) exportarPDF[0].addAction(QIcon("logo.png"), "Exportar a PDF", self.pdf_export) var_view.paintRequested.connect(self.visualizar) var_view.exec_() else: QMessageBox.critical(self, "Atención", "No hay datos en la tabla ", QMessageBox.Ok)
def Print(self): title = ["红色(客户)", "白色(存根)", "黄色(会计)", "蓝色(回单)"] for i in range(7): if self.commoditydata.Find(self.lineedits[i][0].text()) == False: self.commoditydata.InsertData(self.lineedits[i][0].text(), self.lineedits[i][1].text(), self.lineedits[i][2].text()) for i in range(4): preview = QPrintPreviewDialog(self.printer, self) preview.setGeometry(100, 100, 1200, 600) if i == 0: self.redcheckbutton.setChecked(True) self.colorlabel.setStyleSheet( "background-color:rgba(255,0,0,25)") elif i == 1: self.whitecheckbutton.setChecked(True) self.colorlabel.setStyleSheet( "background-color:rgba(255,255,255,25)") elif i == 2: self.yellowcheckbutton.setChecked(True) self.colorlabel.setStyleSheet( "background-color:rgba(255,255,0,25)") else: self.bluecheckbutton.setChecked(True) self.colorlabel.setStyleSheet( "background-color:rgba(0,255,255,25)") preview.setWindowTitle(title[i]) """ 以下两句实现控制打印纸张的大小 QSizeF 中的第二个参数是height ,第一个是width """ #self.printer.setPageSize(QPrinter.Custom) self.printer.setPaperSize(QSizeF(900, 550), QPrinter.Point) preview.paintRequested.connect(self.PlotPic) preview.exec() #显示预览窗口 self.colorlabel.setStyleSheet("background-color:rgba(255,255,255,25)") self.bluecheckbutton.setChecked(False)