|
10Qter豆
在自己机器上运行好好的,打印预览都OK,但是打包后去别的机器上后,点击打印后,预览界面还是正常的,但是选择打印机那个标准提示框不见了,点击打印那个按钮,直接让我保存为PDF格式文件,怎么回事??
电脑打印机可以使用,打印机也设置为默认了- void Print::printInfor(int n)
- {
- /* QPrinter printer( QPrinter::PrinterResolution );
-
- printer.setPageSize(QPrinter::A4);
- printer.setOrientation(QPrinter::Portrait);
-
- QPrintDialog dialog( &printer );
- if ( dialog.exec() )
- {
- qDebug("ERROR");
- }
- */
- QPrinter printer(QPrinter::ScreenResolution);
- QPrintPreviewDialog preview(&printer, this);
- preview.setWindowState(Qt::WindowMaximized);
-
- ui->stackedWidget->setCurrentIndex(n); //打印“印刷生产订单”
- connect(&preview, SIGNAL(paintRequested(QPrinter*)), SLOT(printPreview(QPrinter*)));
- preview.exec();
- }
- void Print::Zhibiao_filePrintPreview()//治标
- {
- printInfor(2);
- }
- void Print::printPreview(QPrinter *printer)
- {
- QPainter painter(printer);
- QPixmap image;
- image = this->grab(QRect( QPoint( 0, 0 ), QSize( -1, -1 ) ));
- //QPixmap image;
- //image = image.grabWidget(this, 0, 0, 1005, 1283);
- QRect rect = painter.viewport();
- QSize size = image.size();
- size.scale(rect.size(), Qt::KeepAspectRatio);//此处保证图片显示完整
- painter.setViewport(rect.x(), rect.y(), size.width(), size.height());
- painter.setWindow(image.rect());
- painter.drawPixmap(0, 0, image);
- }
复制代码 |
|