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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QWebView -> дочерние окна, открываемые JavaScript  (Прочитано 8766 раз)
PinkPanther
Самовар
**
Offline Offline

Сообщений: 169



Просмотр профиля
« : Октябрь 21, 2013, 04:12 »

В моей программе есть браузер (QWebView), иногда в него приходится загружать страницы, которые используют JavaScript, в частности, при нажатии на некоторые ссылки в обычном браузере появляются окошки для ввода текста, или открываются дочерние окна браузера. Вот пример кода со страницы:

<a title="Ввести ключ" href="javascript:wo('keyID017319')"><img src="/images/enter.jpg"></img></a>

Мне только что потребовалась эта опция, пока особенно не разбирался, но при беглом взгляде QWebView не хочет открывать окна при клике на такие ссылки, то есть в результате ничего не происходит. Клик правой кнопкой по ссылке вызывает контекстное меню, в нем есть Open Window и Open in New Window, которые ничего не делают.

Подскажите пожалуйста, как заставить QWebView использовать JavaScript в контексте использования дополнительных окон?
Записан

Эвтаназия - наше хобби!
Dexel
Гость
« Ответ #1 : Январь 17, 2014, 01:03 »

Инспектор JS в WebView включи:
Код:
ui->webView->page()->settings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true);
и посмотри какая ошибка. Правой мышой по окну QWebView и Inspect.
Записан
PinkPanther
Самовар
**
Offline Offline

Сообщений: 169



Просмотр профиля
« Ответ #2 : Январь 17, 2014, 01:06 »

Инспектор JS в WebView включи:
Код:
ui->webView->page()->settings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true);
и посмотри какая ошибка. Правой мышой по окну QWebView и Inspect.

Спасибо, попробую.
Записан

Эвтаназия - наше хобби!
8Observer8
Гость
« Ответ #3 : Апрель 08, 2014, 21:07 »

Инспектор JS в WebView включи:
Код:
ui->webView->page()->settings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true);
и посмотри какая ошибка. Правой мышой по окну QWebView и Inspect.

Для интереса сделал, как Вы написали. В результате получаю ошибки. Просто кинул WebView на форму:


« Последнее редактирование: Апрель 08, 2014, 21:09 от 8Observer8 » Записан
Old
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4350



Просмотр профиля
« Ответ #4 : Апрель 08, 2014, 21:13 »

А модуль webkit в проект не подключили?
QT += webkit
Записан
8Observer8
Гость
« Ответ #5 : Апрель 08, 2014, 21:17 »

Попробовал подключить, всё равно не работает.
Записан
Old
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4350



Просмотр профиля
« Ответ #6 : Апрель 08, 2014, 21:19 »

Попробовал подключить, всё равно не работает.
А после этого qmake запускали?
Записан
8Observer8
Гость
« Ответ #7 : Апрель 08, 2014, 21:34 »

Я через Qt Creator зелёную кнопочку нажимаю Улыбающийся
Записан
Old
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4350



Просмотр профиля
« Ответ #8 : Апрель 08, 2014, 21:35 »

Я через Qt Creator зелёную кнопочку нажимаю Улыбающийся
Попробуйте зайти: Сборка -> Запустить qmake
Записан
8Observer8
Гость
« Ответ #9 : Апрель 08, 2014, 21:45 »

Да, QMake отрабатывает. А вот Run - нет. Те же ошибки, что и выше.
Записан
Old
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4350



Просмотр профиля
« Ответ #10 : Апрель 08, 2014, 21:49 »

А так?
QT      += webkitwidgets
Записан
8Observer8
Гость
« Ответ #11 : Апрель 08, 2014, 22:26 »

Да, так работает Улыбающийся Спасибо огромное!

А почему? Ведь написано, что нужно так: QT += webkit Здесь: http://qt-project.org/doc/qt-5/qtwebkitwidgets-index.html

А то что у меня в окно "Application Output" выводится:
Цитировать
LEAK: 1 Range
LEAK: 169 CachedResource
LEAK: 1094 WebCoreNode
Это нормально?
« Последнее редактирование: Апрель 09, 2014, 04:42 от 8Observer8 » Записан
8Observer8
Гость
« Ответ #12 : Апрель 09, 2014, 07:44 »

Эти утечки возникают только в момент закрытия приложения, поэтому на них можно забить Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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