Название: TextBrowser не обновляется Отправлено: volkov9999 от Сентябрь 08, 2010, 23:51 Здравствуйте!
Имеются некоторые переменные, которые отправляются в html и дальше идут на предпросмотр. После перерасчета TextBrowser открывается со старыми значениями. Делал update() , reload() не помогает. В чем дело? Код: Widget::Widget(QWidget *parent) : Название: Re: TextBrowser не обновляется Отправлено: Denjs от Сентябрь 09, 2010, 00:18 Как вы это делаете ?
Widget::printPreview() - смотрите на него, потом закрываете принт диалог, делаете переасчет, после этого снова Widget::printPreview() - и на препросмотре HTML-ки старые значения переменных? у вас при втором вызове Widget::printPreview() - вызывается ещё раз void Widget::printPreviewNeeds(QPrinter *_printer)? Может быть надо вызвать QPrintPreviewDialog::update? PS: У принт-виджета есть хороший(?) метод void QPrintPreviewWidget::updatePreview () Название: Re: TextBrowser не обновляется Отправлено: volkov9999 от Сентябрь 09, 2010, 01:26 Цитировать Как вы это делаете ? Именно так и делаю. Принт диалог блокирует программу, так что сначала нужно закрыть окно просмотра.Widget::printPreview() - смотрите на него, потом закрываете принт диалог, делаете переасчет, после этого снова Widget::printPreview() - и на препросмотре HTML-ки старые значения переменных? Цитировать у вас при втором вызове Widget::printPreview() - вызывается ещё раз void Widget::printPreviewNeeds(QPrinter *_printer)? Да. update тоже делал - не помогло. Попробовал QPrintPreviewWidget::updatePreview - обновляется. Только нужен "функционал" PreviewDialog =( Название: Re: TextBrowser не обновляется Отправлено: Denjs от Сентябрь 09, 2010, 01:46 гм... а можно хамский вопрос: а вы уверены что внутри void Widget::printPreview() у вас новые значения ваших переменных которые вы преобразуете в текст?
Название: Re: TextBrowser не обновляется Отправлено: volkov9999 от Сентябрь 09, 2010, 01:53 Угу ;D . В функции использую переменные класса.
изменил prDialog из QPrintPreviewDialog -> QPrintPreviewWidget вместо prDialog->exec(); -> prDialog->show(); и стало обновляться. остальной код не трогал |