Название: QT 4.6.2 - QWebView: Определение необходимости открытия ссылки в новом окне Отправлено: DarkPhoenix от Март 15, 2010, 14:49 Имеется QWebView, загружаем страницу, на которой имеются ссылки.
Ряд ссылок должен открываться в этом же окне, ряд в новом (target="_blank") Как определить, что ссылка должна открыться в новом окне? посылать в demo browser не стоит, хочется что-то более легко понимаемое с меньшим объемом кода. Заранее спасибо :) Название: Re: QT 4.6.2 - QWebView: Определение необходимости открытия ссылки в новом окне Отправлено: zenden от Март 15, 2010, 15:40 наверно нужно копать в сторону QWebView * createWindow ( QWebPage::WebWindowType type )
Название: Re: QT 4.6.2 - QWebView: Определение необходимости открытия ссылки в новом окне Отправлено: DarkPhoenix от Март 15, 2010, 15:42 спс, как и думал что придется так.
в сети нашел пример, сработало: Код: #include <QWebPage> теперь надо будет разобраться как получить ссылку, по которой кликнули, думаю событие linkClicked поможет Название: Re: QT 4.6.2 - QWebView: Определение необходимости открытия ссылки в новом окне Отправлено: DarkPhoenix от Март 15, 2010, 16:37 Пока что получаю информацию по url так:
Код: Navigation n = navigations.at(navigations.size()-1); скорее всего уберу таблицу переходов. пока не знаю понадобится или нет. Название: Re: QT 4.6.2 - QWebView: Определение необходимости открытия ссылки в новом окне Отправлено: sendevent от Март 15, 2010, 17:15 для получения "клитнутых" ссылок можно глянуть QWebHitTestResult и/или WebPage::acceptNavigationRequest
Название: Re: QT 4.6.2 - QWebView: Определение необходимости открытия ссылки в новом окне Отправлено: Vitto74 от Апрель 13, 2010, 11:41 спс, как и думал что придется так. Теперь все это прикручивается к QWebView такв сети нашел пример, сработало: Код: #include <QWebPage> теперь надо будет разобраться как получить ссылку, по которой кликнули, думаю событие linkClicked поможет Код: ui->webView->page()->~QWebPage(); Код: virtual QWebPage* createWindow(WebWindowType) Название: Re: QT 4.6.2 - QWebView: Определение необходимости открытия ссылки в новом окне Отправлено: BRE от Апрель 13, 2010, 11:47 Для чего вызываешь деструктор напрямую? Почему не вызываешь для этого delete?
Код: ui->webView->page()->~QWebPage(); Название: Re: QT 4.6.2 - QWebView: Определение необходимости открытия ссылки в новом окне Отправлено: Vitto74 от Апрель 13, 2010, 11:58 Для чего вызываешь деструктор напрямую? Почему не вызываешь для этого delete? Можно и delete.Код: ui->webView->page()->~QWebPage(); Код: delete(ui->webView->page()); Название: Re: QT 4.6.2 - QWebView: Определение необходимости открытия ссылки в новом окне Отправлено: BRE от Апрель 13, 2010, 12:00 Можно и delete. Нужно! :)Иначе память занимаемая объектом освобождаться не будет. Название: Re: QT 4.6.2 - QWebView: Определение необходимости открытия ссылки в новом окне Отправлено: Vitto74 от Апрель 13, 2010, 12:06 Иначе память занимаемая объектом освобождаться не будет. Буду знать.Так что происходит с возвращаемой методом Код: virtual QWebPage* createWindow(WebWindowType) |