Класс QWebEngineUrlSchemeHandler
Класс QWebEngineUrlSchemeHandler является базовым классом для обработки пользовательских схем URL. Подробнее...
| Заголовок: | #include <QWebEngineUrlSchemeHandler> |
| С момента: | Qt 5.6 |
| Наследует: | QObject |
Этот класс был представлен в Qt 5.6.
Открытые функции
| QWebEngineUrlSchemeHandler(QObject *parent = Q_NULLPTR) | |
| virtual | ~QWebEngineUrlSchemeHandler() |
| virtual void | requestStarted(QWebEngineUrlRequestJob *request) = 0 |
Подробное описание
Для реализации пользовательской схемы URL для QtWebEngine сначала необходимо создать экземпляр QWebEngineUrlScheme и зарегистрировать его с помощью QWebEngineUrlScheme::registerScheme().
Примечание: Убедитесь, что вы создали и зарегистрировали объект схемы до создания объекта QGuiApplication или QApplication.
Затем необходимо создать класс, производный от QWebEngineUrlSchemeHandler, и переопределить метод requestStarted().
Наконец, установите объект обработчика схем с помощью QWebEngineProfile::installUrlSchemeHandler() или QQuickWebEngineProfile::installUrlSchemeHandler().
class MySchemeHandler : public QWebEngineUrlSchemeHandler
{
public:
MySchemeHandler(QObject *parent = nullptr);
void requestStarted(QWebEngineUrlRequestJob *request)
{
// ....
}
};
int main(int argc, char **argv)
{
QWebEngineUrlScheme scheme("myscheme");
scheme.setSyntax(QWebEngineUrlScheme::Syntax::HostAndPort);
scheme.setDefaultPort(2345);
scheme.setFlags(QWebEngineUrlScheme::SecureScheme);
QWebEngineUrlScheme::registerScheme(scheme);
// ...
QApplication app(argc, argv);
// ...
// installUrlSchemeHandler does not take ownership of the handler.
MySchemeHandler *handler = new MySchemeHandler(parent);
QWebEngineProfile::defaultProfile()->installUrlSchemeHandler("myscheme", handler);
} См. также QWebEngineUrlScheme и Пример WebEngine Widgets WebUI.
Документация по членам-функциям
QWebEngineUrlSchemeHandler::QWebEngineUrlSchemeHandler(QObject *parent = Q_NULLPTR)
Конструирует новый обработчик схем URL.
Обработчик создаётся с родительским объектом parent.
[virtual] QWebEngineUrlSchemeHandler::~QWebEngineUrlSchemeHandler()
Удаляет пользовательский обработчик схем URL.
[pure virtual] void QWebEngineUrlSchemeHandler::requestStarted(QWebEngineUrlRequestJob *request)
Этот метод вызывается всякий раз, когда запрос request для зарегистрированной схемы инициируется.
Этот метод должен быть переопределён всеми пользовательскими обработчиками схем URL. Запрос является асинхронным и не требует немедленного обработки.
См. также QWebEngineUrlRequestJob.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qwebengineurlschemehandler.html