Форум вопросов и ответов

Форум вопросов и ответов (https://www.otvetnemail.ru/)
-   Продолжение старого архива (https://www.otvetnemail.ru/prodolzhenie-starogo-arhiva-804/)
-   -   Фоновая печать из QWebView (https://www.otvetnemail.ru/prodolzhenie-starogo-arhiva-804/fonovaya-pechat-iz-qwebview-371049/)

Guest 01.10.2011 06:06

Фоновая печать из QWebView
 
Пытаюсь распечатать из QWebView достаточно большой html-документ (на 100 страниц) функцией print(QPrinter).В итоге программа "подмерзает" пока функция не отработает, а работает она довольно долго. Попытался убрать ее в поток.Код:class PrintThread : public QThread{ Q_OBJECTpublic: PrintThread(QWebView*, QPrinter*);protected: void run(); QWebView *wv; QPrinter *printer;};void PrintThread::run(){ wv->print(printer);}Пытаюсь печатать так:Код:QWebView *webview = new QWebView();QPrinter *printer = new QPrinter();//...PrintThread ptPrint(webview, printer);ptPrint->start();Вроде бы печать уходит в фон и в общем-то иногда печатает нормально. Но если попытаться в это время подергать главное окно, то программа валится. В Output валятся сообщения ЦитироватьQObject::startTimer: timers cannot be started from another threadQObject::killTimer: timers cannot be stopped from another threadThis may be due to a corruption of the heap, and indicates a bug in vrfstat.exe or any of the DLLs it has loaded.Вопрос собстна как правильно организовать фоновую печть?


Часовой пояс GMT, время: 20:14.


© www.otvetnemail.ru - Форум вопросов и ответов.