Russian Qt Forum

Qt => Общие вопросы => Тема начата: serg_hd от Май 17, 2010, 17:16



Название: QWebPage и поток
Отправлено: serg_hd от Май 17, 2010, 17:16
Собсно, если его создать в потоке (винда):
"ASSERT failure in QWidget: "Widgets must be created in the GUI thread.", file kernel\qwidget.cpp, line 1133"
Если в линухе, то всё нормально.
Вылетает наверное из-за (виндовая реализация вебкита):
RenderThemeQt.cpp:
Код
C++ (Qt)
RenderThemeQt::RenderThemeQt(Page* page)
   : RenderTheme()
   , m_page(page)
{
 QPushButton button; //<<<<------ этого
 ...
}
 
 

Есть какие-либо предложения по исправлению кроме пересборки Qt?


Название: Re: QWebPage и поток
Отправлено: alexman от Май 17, 2010, 21:42
Вы создаете виджет не в главной нитке! Манипуляции с виджетами можно делать только в главном потоке!


Название: Re: QWebPage и поток
Отправлено: serg_hd от Май 17, 2010, 22:51
Вы создаете виджет не в главной нитке! Манипуляции с виджетами можно делать только в главном потоке!
А ничего, что QWebPage не виджет?)


Название: Re: QWebPage и поток
Отправлено: alexman от Май 17, 2010, 23:06
QPushButton button;?


Название: Re: QWebPage и поток
Отправлено: serg_hd от Май 17, 2010, 23:07
RenderThemeQt.cpp это файл вебкита вообще-то, а не мой, и QWebPage его юзает


Название: Re: QWebPage и поток
Отправлено: alexman от Май 17, 2010, 23:19
Сорри, сразу не понял о чем речь :(


Название: Re: QWebPage и поток
Отправлено: serg_hd от Май 17, 2010, 23:51
да ничего. Странно, что троли не обратили внимание на это (касаемо винды конечно). Какой ещё от qwebpage толк, если не юзать его в потоке. Ведь для вне потока есть qwebview...


Название: Re: QWebPage и поток
Отправлено: serg_hd от Май 18, 2010, 03:25
проблема частично решена (пересборкой вебкита), но qwebpage вроде бы не прорисовывает картинки (урл к которым сгенерен яваскриптом), как это делает qwebview, по крайней мере тесты так показывают. Эхх...


Название: Re: QWebPage и поток
Отправлено: ритт от Май 19, 2010, 21:25
а где/как/зачем/почему он должен их прорисовывать?


Название: Re: QWebPage и поток
Отправлено: serg_hd от Май 20, 2010, 00:43
а где/как/зачем/почему он должен их прорисовывать?
Загружаемая страница естественно должна прорисовываться - многие ссылки на ней, адреса на ресурсы т.д. и т.п. могут генерироваться не только HTML'ем, но и яваскриптом. Например по счётчикам посещаемости это легко проверить, они выводят свои картинки по урлу, который сгенерен яваскриптом. Какой смысл в qwebpage без этого, чтобы просто грузить контент что ли? Так мне проще для этой цели один qnetworkaccessmanager использовать...


Название: Re: QWebPage и поток
Отправлено: ритт от Май 20, 2010, 01:39
а где/как/зачем/почему он должен их прорисовывать?
Загружаемая страница естественно должна прорисовываться - многие ссылки на ней, адреса на ресурсы т.д. и т.п. могут генерироваться не только HTML'ем, но и яваскриптом. Например по счётчикам посещаемости это легко проверить, они выводят свои картинки по урлу, который сгенерен яваскриптом. Какой смысл в qwebpage без этого, чтобы просто грузить контент что ли? Так мне проще для этой цели один qnetworkaccessmanager использовать...
путаешь понятия. "прорисовываться" здесь неуместно.


Название: Re: QWebPage и поток
Отправлено: serg_hd от Май 20, 2010, 15:57
а где/как/зачем/почему он должен их прорисовывать?
Загружаемая страница естественно должна прорисовываться - многие ссылки на ней, адреса на ресурсы т.д. и т.п. могут генерироваться не только HTML'ем, но и яваскриптом. Например по счётчикам посещаемости это легко проверить, они выводят свои картинки по урлу, который сгенерен яваскриптом. Какой смысл в qwebpage без этого, чтобы просто грузить контент что ли? Так мне проще для этой цели один qnetworkaccessmanager использовать...
путаешь понятия. "прорисовываться" здесь неуместно.
ну "срабатывает". Главное чтобы понятно было что имеется ввиду.