Как открыть веб-инспектор в QWebView?
Я хочу открыть веб-инспектор QWebView в моем приложении, потому что необходима отладка в QWebView.
Как я могу это сделать?
Согласно документации я пробовал:
view->pageAction(QWebPage::InspectElement)->trigger();
это не сработало, а потом я попробовал это:
view->page()->settings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true);
QWebInspector inspector;
inspector.setPage(view->page());
inspector.setVisible(true);
это добавляет элемент элемента Inspect в контекстное меню.
Как я могу показать веб-инспектора из кода? Я открываю его, используя правую кнопку мыши -> Проверить элемент.
Я не хочу добавлять его как виджет, а как отдельное окно.
1 ответ
Решение
Оставьте только вызов setAttribute. Тогда вы сможете вызвать инспектора из контекстного меню.
Приведенный ниже код не является оптимальным, но он показывает, как части работают вместе.
Чтобы добавить это в немодальный диалог:
QDialog dlg;
...
QWebInspector *i = new QWebInspector(this);
dlg.setLayout(new QVBoxLayout());
dlg.layout()->addWidget(i);
dlg.setModal(false);
dlg.show();
dlg.raise();
dlg.activateWindow();
Ваш QDialog должен быть членом класса.