Добрый день!
Есть код:
void DialogMain::OnPrintTable()
{
#ifndef QT_NO_PRINTER
QPrinter printer;
printer.setFullPage(false);
printer.setOrientation(QPrinter::Landscape);
QPrintPreviewDialog preview(&printer,this,Qt::WindowMinMaxButtonsHint);
preview.setWindowTitle("Перегляд друку "+ this->windowTitle());
connect(&preview, SIGNAL(paintRequested(QPrinter*)),this, SLOT(printPreview(QPrinter*)));
preview.exec();
#endif
}
void DialogMain::printPreview(QPrinter *printer)
{
QString str_html="";
int size = 0;
tablegrChildPoint->CreateHtmlPreview(this->windowTitle(),str_html, size);
#ifndef QT_NO_PRINTER
QTextDocument *doc = new QTextDocument();
doc->setHtml(str_html);
if(size>=900)
doc->setPageSize(QSizeF(size+10,size+10));
doc->print(printer);
#endif
}
Проблема в том, что при первом просмотре печати окно предварительного просмотра отображается долго, потом при повторном отображении быстро, а потом все обратно.
Подскажите пожалуйста в чем проблема.