def printPreview(self): document = self.getDocumentForPrint() if document == None: return printer = self.standardPrinter() preview = QPrintPreviewDialog(printer, self) preview.paintRequested.connect(document.print) preview.exec()
def printPreview(self): document = self.getDocumentForPrint() if document == None: return printer = self.standardPrinter() preview = QPrintPreviewDialog(printer, self) preview.paintRequested.connect(document.print) preview.exec()
def Print(self): if self.CheckTable() == False: #如果库存单信息不完整,将不能打印 return if not (self.yifu.isChecked() or self.weifu.isChecked()) and self.AddinDatabase == True: QMessageBox.warning(self, "警告", "请选择“付款情况") return if self.AddinDatabase: #在非查看模式下打印才会将数据存入数据库 #if True: print("yes") if not self.yifu.isChecked(): #将未付款客户订单存入数据库 print(self.getnotpaydata()) self.kucundandata.InsertData(self.getnotpaydata()) self.yingye.InsertData(self.getYingYeEData("未付款")) #print(self.getYingYeEData("未付款")) else: self.yingye.InsertData(self.getYingYeEData("已付款")) #print(self.getYingYeEData("已付款")) for i in range(10): #将从没出现过的商品存入数据库 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): 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 = QPrintPreviewDialog(self.printer, self) preview.setGeometry(100, 100, 1200, 900) """ 以下两句实现控制打印纸张的大小 QSizeF 中的第二个参数是height ,第一个是width """ self.printer.setPageSize(QPrinter.Custom) self.printer.setPaperSize(QSizeF(1880, 1260), QPrinter.Point) #QSizeF 中的参数按比例改变可以填充满纸张 preview.paintRequested.connect(self.PlotPic) preview.exec() # 显示预览窗口 self.colorlabel.setStyleSheet("background-color:rgba(255,255,255,25)") self.bluecheckbutton.setChecked(False)
def printPreview(self): title, htmltext, preview = self.currentTab.getDocumentForExport() document = self.getDocumentForPrint(title, htmltext, preview) if document is None: return printer = self.standardPrinter(title) preview = QPrintPreviewDialog(printer, self) preview.paintRequested.connect(document.print) preview.exec()
def onTriggeredPrintAct_c(self): with open("table2.png", "wb") as tablePng: tablePng.write(base64.b64decode(table2_png)) tableImage = QImage() tableImage.load("table2.png") os.remove("table2.png") self.getWearCardImage(tableImage) preview = QPrintPreviewDialog(self.printer, self) preview.paintRequested.connect(self.plotPic) preview.exec() # /* 等待预览界面退出 */
def printPreview(self): title, htmltext, preview = self.currentTab.getDocumentForExport(includeStyleSheet=True, webenv=False) document = self.getDocumentForPrint(title, htmltext, preview) if document is None: return printer = self.standardPrinter(title) preview = QPrintPreviewDialog(printer, self) preview.paintRequested.connect(document.print) preview.exec()
def printPreview(self): if not self.m_page: return if self.m_inPrintPreview: return self.m_inPrintPreview = True printer = QPrinter(QPrinter.HighResolution) preview = QPrintPreviewDialog(printer, self.m_page.view()) preview.paintRequested.connect(self.printDocument) preview.exec() self.m_inPrintPreview = False
def on_picButton_clicked(): printer = QPrinter(QPrinter.HighResolution) # /* 打印预览 */ preview = QPrintPreviewDialog(printer, widget) """ * QPrintPreviewDialog类提供了一个打印预览对话框,里面功能比较全, * paintRequested(QPrinter *printer)是系统提供的, * 当preview.exec()执行时该信号被触发, * plotPic(QPrinter *printer)是用户自定义的槽函数,图像的绘制就在这个函数里。 """ preview.paintRequested.connect(plotPic) preview.exec() # /* 等待预览界面退出 */
def _print_preview(tab: apitypes.Tab) -> None: """Show a print preview.""" def print_callback(ok: bool) -> None: if not ok: message.error("Printing failed!") tab.printing.check_preview_support() diag = QPrintPreviewDialog(tab) diag.setAttribute(Qt.WA_DeleteOnClose) diag.setWindowFlags(diag.windowFlags() | Qt.WindowMaximizeButtonHint | Qt.WindowMinimizeButtonHint) diag.paintRequested.connect( functools.partial(tab.printing.to_printer, callback=print_callback)) diag.exec()
def __init__(self, parent=None, html=None): super(PrintHtml, self).__init__(parent) # html = codecs.open(b"template.html", encoding='utf-8').read() baseurl = QUrl.fromLocalFile(os.getcwd() + "/temp/index.html") self.setHtml(html, baseurl) self.printer = QPrinter() self.printer.setPageSize(QPrinter.A4) self.printer.setOrientation(QPrinter.Portrait) self.printer.setPageMargins(5, 5, 5, 5, QPrinter.Millimeter) self.setFixedWidth(1000) dialog = QPrintPreviewDialog(self.printer) dialog.setWindowState(Qt.WindowMaximized) dialog.paintRequested.connect(self.print_) dialog.setWindowFlags(Qt.CustomizeWindowHint | Qt.WindowTitleHint | Qt.WindowMinMaxButtonsHint | Qt.WindowCloseButtonHint | Qt.WindowContextHelpButtonHint) dialog.exec()
class HtmlView(QWebEngineView): """Subclass QWebView and connect to a QPrintPreviewDialog object""" def __init__(self, parent=None, url = ""): """ Constructor of HtmlView :param parent: parent of the view :param url: url to load, if set, a loadFInished signal is emitted """ super().__init__(parent) self.html = "" self.setUrl(QUrl(url)) """Open QPrintPreviewDialog dialog window""" self.preview = QPrintPreviewDialog() # just for the moment / buf in Qt leads to incorrect printing of tables fomr QWebKit self.preview.printer().setOutputFormat(QPrinter.PdfFormat) self.preview.printer().setPaperSize(QPrinter.A4) self.textedit = QTextEdit() self.preview.paintRequested.connect(self.printPreview) if url != "": self.loadFinished.connect(self.execpreview) def execpreview(self, arg): self.preview.exec() def printPreview(self, printer): self.textedit.print(printer) def setHtml_(self, html): self.setHtml(html) self.textedit.setHtml(html) # small workaround to find the QPrintPreviewWidget inside the pre-defined dialog and force it to update its content wdg = self.preview.findChild(PyQt5.QtPrintSupport.QPrintPreviewWidget) if wdg is not None: wdg.updatePreview()
def __init__(self, parent=None, html=None): super(PrintHtml, self).__init__(parent) # html = codecs.open(b"template.html", encoding='utf-8').read() baseurl = QUrl.fromLocalFile(os.getcwd() + "/temp/index.html") self.setHtml(html, baseurl) self.printer = QPrinter() self.printer.setPageSize(QPrinter.A4) self.printer.setOrientation(QPrinter.Portrait) self.printer.setPageMargins(5, 5, 5, 5, QPrinter.Millimeter) self.setFixedWidth(1000) dialog = QPrintPreviewDialog(self.printer) dialog.setWindowState(Qt.WindowMaximized) dialog.paintRequested.connect(self.print_) dialog.setWindowFlags(Qt.CustomizeWindowHint | Qt.WindowTitleHint | Qt.WindowMinMaxButtonsHint | Qt.WindowCloseButtonHint | Qt.WindowContextHelpButtonHint) dialog.exec()
class HtmlView(QWebEngineView): """Subclass QWebView and connect to a QPrintPreviewDialog object""" def __init__(self, parent=None, url=""): """ Constructor of HtmlView :param parent: parent of the view :param url: url to load, if set, a loadFInished signal is emitted """ super().__init__(parent) self.html = "" self.setUrl(QUrl(url)) """Open QPrintPreviewDialog dialog window""" self.preview = QPrintPreviewDialog() # just for the moment / buf in Qt leads to incorrect printing of tables fomr QWebKit self.preview.printer().setOutputFormat(QPrinter.PdfFormat) self.preview.printer().setPaperSize(QPrinter.A4) self.textedit = QTextEdit() self.preview.paintRequested.connect(self.printPreview) if url != "": self.loadFinished.connect(self.execpreview) def execpreview(self, arg): self.preview.exec() def printPreview(self, printer): self.textedit.print(printer) def setHtml_(self, html): self.setHtml(html) self.textedit.setHtml(html) # small workaround to find the QPrintPreviewWidget inside the pre-defined dialog and force it to update its content wdg = self.preview.findChild(PyQt5.QtPrintSupport.QPrintPreviewWidget) if wdg is not None: wdg.updatePreview()
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)
def printPreview(self): printer = QPrinter(QPrinter.HighResolution) previewDialog = QPrintPreviewDialog(printer, self) previewDialog.paintRequested.connect(self.preview) previewDialog.exec()
def kagidadok(self): diyalog = QPrintPreviewDialog() diyalog.paintRequested.connect(self.ciktial) diyalog.exec()
def handle_preview(self): preview = QPrintPreviewDialog() preview.paintRequested.connect(self.handle_paint) preview.exec()