在自己机器上运行好好的,打印预览都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);
}
复制代码