[Предыдущая: Модуль QtSvg] [Модули Qt] [Следующая: Модуль QtXml] Модуль QtWebKit
|
QWebDatabase | Доступ к базам данных HTML 5, созданным с помощью JavaScript |
---|---|
QWebFrame | Представляет фрейм в веб-странице |
QWebHistory | Представляет историю QWebPage |
QWebHistoryInterface | Интерфейс к инструменту истории ссылок |
QWebHistoryItem | Представляет один элемент в истории QWebPage |
QWebHitTestResult | Информация о содержимом веб-страницы после проверки наличия (hit test) |
QWebPage | Объект для просмотра и редактирования веб-документов |
QWebPluginFactory | Создает подключаемые модули, встраиваемые внутрь веб-страниц |
QWebSecurityOrigin | Определяет границы безопасности для веб-сайтов |
QWebSettings | Объект для сохранения настроек, используемых QWebPage и QWebFrame |
QWebView | Виджет, используемый для просмотра и редактирования веб-документов |
QtWebKit предоставляет механизм веб-браузера, который делает легким встраивание контента из всемирной паутины в ваше приложение Qt. Одновременно веб-контент может быть расширен с помощью элементов управления, присущих данной системе.
QtWebKit предоставляет возможности визуализации документов HyperText Markup Language (HTML), Extensible HyperText Markup Language (XHTML) и масштабируемой векторной графики (Scalable Vector Graphics, SVG), применять стили с использованием каскадных таблиц стилей (Cascading Style Sheets, CSS) и расширять сценариями с помощью JavaScript.
Мост между средой выполнения JavaScript и объектной моделью Qt делает возможным расширение сценариями и для пользовательских объектов QObject. Интеграция с модулем работы с сетью Qt делает возможным прозрачную загрузку веб-страниц с веб-серверов, из локальной файловой системы или даже из системы ресурсов Qt.
Кроме того предоставляя чистые средства визуализации можно сделать документы HTML полностью редактируемыми пользователями посредством использования атрибута contenteditable элементов HTML.
QtWebKit основан на механизме с открытыми исходными кодами WebKit. Найти дополнительную информацию о самом WebKit можно на веб-сайте Проекта с открытыми исходными кодами WebKit.
Модуль QtWebKit является частью Выпуска Qt Full Framework и Версий Open Source Qt.
Замечание: Сборка модуля QtWebKit с отладочными символами является проблематичным на многих платформах из-за размера движка WebKit. Мы рекомендуем собирать модуль в режиме релиза только для встраиваемых платформ.
Замечание: Пиктограммы сайтов, известные также как "FavIcons", в настоящее время не поддерживаются под Windows. Мы планируем вернуться к этому в следующих выпусках.
Замечание: WebKit имеет некоторые минимальные требования, которые должны выполняться на встраиваемых Linux-системах. Для получения дополнительной информации обратитесь к документу Требования Qt для встраиваемых Linux-систем.
Темы:
Приложения, использующие классы QtWebKit, нужно сконфигурировать для сборки вместе с модулем QtWebKit. Следующая декларация в файле проекта qmake гарантирует, что приложение будет скомпилировано и связано с данным модулем:
QT += webkit
Эта строка необходима, так как по умолчанию только модули QtCore и QtGui используются в процессе сборки.
Для включения определений классов этого модуля используйте следующую директиву:
#include <QtWebKit>
Самый лёгкий способ визуализировать контент - через класс QWebView. Как виджет он может быть встроен в ваши формы или графическое представление, и он предоставляет вспомогательные функции для скачивания и визуализации веб-сайтов.
QWebView *view = new QWebView(parent);
view->load(QUrl("http://qt.nokia.com/"));
view->show();
QWebView работает как окно на веб-страницы, каждая из которых отображается экземпляром класса QWebPage. QWebPage предоставляет доступ к структуре документа страницы, описывая возможности, такие как фреймы, история перемещения и стек отмены/повтора команд для редактируемого контента.
Документы HTML могут вложены друг в друга с использованием фреймов в наборе фреймов. Отдельный фрейм в HTML представляется используя класс QWebFrame. Он содержит мост к объекту окна JavaScript и может быть отрисован с использованием QPainter. Каждая QWebPage имеет один объект QWebFrame в качестве главного фрейма.
Отдельные возможности просмотра, умолчания и другие настройки можно сконфигурировать посредством класса QWebSettings. Можно предоставить умолчания для всех экземпляров класса QWebPage посредством настроек по умолчанию. Отдельные атрибуты могут быть перегружены объектом настроек индивидуальным страницы.
Замечание: Поддержка подключаемого модуля Netscape доступна только на настольных платформах.
Так как WebKit поддерживает API подключаемого модуля, приложения Qt могут выводить на экран веб-страницы, в которые внедрены распространённые подключаемые модули. Чтобы включить поддержку подключаемого модуля у пользователя должны быть установлены соответствующие двоичные файлы этих подключаемых модулей, а для приложения должен быть включён атрибут QWebSettings::PluginsEnabled.
Поиск подключаемых модулей будет вестись в следующих местах:
Linux/Unix (X11) | Windows |
---|---|
|
|
Mac OS X | |
|
Это срез порта WebKit для Qt. Точную информацию о версии можно найти в файле src/3rdparty/webkit/VERSION, поставляемом вместе с Qt.
Держатели лицензии коммерческого выпуска Qt, которые хотят распространять приложения, использующие модуль QtWebKit, должны быть осведомлены об их обязательствах по GNU Lesser General Public License (LGPL).
Разработчики использующие выпуск Open Source, могут выбрать способ распространения модуля под подходящей версией GNU LGPL; версия 2.1 для приложений и библиотек, лицензируемых на условиях GNU GPL версии 2 или версии 3 для приложений и библиотек, лицензируемых на условиях GNU GPL version 2.
WebKit is licensed under the GNU Library General Public License. Individual contributor names and copyright dates can be found inline in the code.
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details.
You should have received a copy of the GNU Library General Public License along with this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
[Предыдущая: Модуль QtSvg] [Модули Qt] [Следующая: Модуль QtXml]
Copyright © 2009 Nokia Corporation and/or its subsidiary(-ies) | Торговые марки | Qt 4.5.3 |
Попытка перевода Qt документации. Если есть желание присоединиться, или если есть замечания или пожелания, то заходите на форум: Перевод Qt документации на русский язык... Люди внесшие вклад в перевод: Команда переводчиков |