Russian Qt Forum
Сентябрь 30, 2024, 18:25 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QWebPage и поток  (Прочитано 5845 раз)
serg_hd
Хакер
*****
Offline Offline

Сообщений: 668



Просмотр профиля
« : Май 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?
« Последнее редактирование: Май 17, 2010, 18:01 от serg_hd » Записан

kubuntu/Win7/x64/NetBeans
alexman
Гость
« Ответ #1 : Май 17, 2010, 21:42 »

Вы создаете виджет не в главной нитке! Манипуляции с виджетами можно делать только в главном потоке!
Записан
serg_hd
Хакер
*****
Offline Offline

Сообщений: 668



Просмотр профиля
« Ответ #2 : Май 17, 2010, 22:51 »

Вы создаете виджет не в главной нитке! Манипуляции с виджетами можно делать только в главном потоке!
А ничего, что QWebPage не виджет?)
Записан

kubuntu/Win7/x64/NetBeans
alexman
Гость
« Ответ #3 : Май 17, 2010, 23:06 »

QPushButton button;?
Записан
serg_hd
Хакер
*****
Offline Offline

Сообщений: 668



Просмотр профиля
« Ответ #4 : Май 17, 2010, 23:07 »

RenderThemeQt.cpp это файл вебкита вообще-то, а не мой, и QWebPage его юзает
« Последнее редактирование: Май 17, 2010, 23:10 от serg_hd » Записан

kubuntu/Win7/x64/NetBeans
alexman
Гость
« Ответ #5 : Май 17, 2010, 23:19 »

Сорри, сразу не понял о чем речь Грустный
Записан
serg_hd
Хакер
*****
Offline Offline

Сообщений: 668



Просмотр профиля
« Ответ #6 : Май 17, 2010, 23:51 »

да ничего. Странно, что троли не обратили внимание на это (касаемо винды конечно). Какой ещё от qwebpage толк, если не юзать его в потоке. Ведь для вне потока есть qwebview...
Записан

kubuntu/Win7/x64/NetBeans
serg_hd
Хакер
*****
Offline Offline

Сообщений: 668



Просмотр профиля
« Ответ #7 : Май 18, 2010, 03:25 »

проблема частично решена (пересборкой вебкита), но qwebpage вроде бы не прорисовывает картинки (урл к которым сгенерен яваскриптом), как это делает qwebview, по крайней мере тесты так показывают. Эхх...
« Последнее редактирование: Май 19, 2010, 17:01 от serg_hd » Записан

kubuntu/Win7/x64/NetBeans
ритт
Гость
« Ответ #8 : Май 19, 2010, 21:25 »

а где/как/зачем/почему он должен их прорисовывать?
Записан
serg_hd
Хакер
*****
Offline Offline

Сообщений: 668



Просмотр профиля
« Ответ #9 : Май 20, 2010, 00:43 »

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

kubuntu/Win7/x64/NetBeans
ритт
Гость
« Ответ #10 : Май 20, 2010, 01:39 »

а где/как/зачем/почему он должен их прорисовывать?
Загружаемая страница естественно должна прорисовываться - многие ссылки на ней, адреса на ресурсы т.д. и т.п. могут генерироваться не только HTML'ем, но и яваскриптом. Например по счётчикам посещаемости это легко проверить, они выводят свои картинки по урлу, который сгенерен яваскриптом. Какой смысл в qwebpage без этого, чтобы просто грузить контент что ли? Так мне проще для этой цели один qnetworkaccessmanager использовать...
путаешь понятия. "прорисовываться" здесь неуместно.
Записан
serg_hd
Хакер
*****
Offline Offline

Сообщений: 668



Просмотр профиля
« Ответ #11 : Май 20, 2010, 15:57 »

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

kubuntu/Win7/x64/NetBeans
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.146 секунд. Запросов: 23.