Доброго времени суток.
Снова в качестве заметки.
Возникла необходимость выводить на печать точную копию содержимого QTableWidget c делегатами и т.д.
Получилось следующее:
void FinalPage::on_pushButtonPrint_clicked() { int width = 0; int height = 0; int columns = ui->tableWidgetName->columnCount(); int rows = ui->tableWidgetName->rowCount(); for( int i = 0; i < columns; ++i ) { width += ui->tableWidgetName->columnWidth(i); } for( int i = 0; i < rows; ++i ) { height += ui->tableWidgetName->rowHeight(i); } ui->tableWidgetName->setFixedSize(width, height); ui->tableWidgetName->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); ui->tableWidgetName->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); QPrintPreviewDialog *prDialog = new QPrintPreviewDialog(&printer, this); ui->tableWidgetName->render(&printer); connect(prDialog,&QPrintPreviewDialog::paintRequested,this,&FinalPage::printPreviewNeeds); prDialog->showMaximized(); prDialog->exec(); } void FinalPage::printPreviewNeeds(QPrinter *) { ui->tableWidgetName->render(&printer); }