qt框架,使用webEngine如何调试前端

解决 Qt 5.14.2 中启用开发者工具的问题

问题在于 Qt 5.14.2 中 QWebEngineSettings::DeveloperExtrasEnabled 属性已被弃用或更改。

正确启用开发者工具的完整方法(Qt 5.14.2)

1. 修改 main.cpp

复制代码
#include <QWebEngineView>
#include <QWebEngineSettings>
#include <QWebEnginePage>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    
    // 创建主窗口
    QMainWindow window;
    
    // 创建WebEngine视图
    QWebEngineView *webView = new QWebEngineView(&window);
    
    // 启用开发者工具 - Qt 5.14.2 正确方式
    QWebEnginePage *page = webView->page();
    
    // 方法2:启用远程调试(推荐)
    page->setDevToolsPage(page); // 关键设置
    
    // 设置WebChannel(如果使用)
    QWebChannel *channel = new QWebChannel(webView);
    channel->registerObject("backend", backend);
    page->setWebChannel(channel);
    
    // 加载HTML内容
    // ...
    
    return app.exec();
}

2. 设置环境变量(重要)

在代码开头添加环境变量设置:

复制代码
#include <QApplication>
#include <QProcessEnvironment>

int main(int argc, char *argv[])
{
    // 设置远程调试端口
    qputenv("QTWEBENGINE_REMOTE_DEBUGGING", "9222");
    
    QApplication app(argc, argv);
    // ...
}

3. 使用 Chrome 进行远程调试

  1. ​启动应用程序​

  2. ​打开 Chrome 浏览器​

  3. ​访问地址栏输入​

    复制代码
    chrome://inspect
  4. ​配置端口​

    • 点击 "Configure..."
    • 添加 localhost:9222
  5. ​开始调试​

    • 在 "Remote Target" 部分找到您的应用
    • 点击 "inspect" 打开开发者工具
相关推荐
Csvn28 分钟前
Vue 3 defineModel 翻车实录:多个 v-model 绑定到底怎么写?
前端·vue.js
甲维斯32 分钟前
坦克大战测试全翻车了!豆包,DeepSeek,Qwen,GPT,Claude
前端·人工智能·游戏开发
乘风gg1 小时前
还在养虾吗?虾王已诞生:微信龙虾 ClawBot
前端·ai编程·claude
小小小小宇2 小时前
LLM 长期记忆构建
前端
lichenyang4532 小时前
从 Express 老项目到 NestJS + Docker:一次车辆管理系统的渐进式重构
前端
Momo__3 小时前
VueUse createReusableTemplate —— 单文件组件内的模板复用神器
前端·vue.js
程序员小富3 小时前
我开源了一个开发者专属的智能 JSON 工具,得到了媳妇高度认可
前端·vue.js·后端
小小小小宇3 小时前
程序员如何给 LLM 装工具以及看懂推理过程
前端
写代码的皮筏艇3 小时前
React中的forwardRef
前端·react.js·面试
槑有老呆3 小时前
花三个月工资请了个 AI 程序员,结果它连青岛啤酒股价都查不了
前端