首页 > 其他分享 >Qt - QtWebEngineWidgets模块

Qt - QtWebEngineWidgets模块

时间:2024-07-17 17:22:19浏览次数:9  
标签:QT QtWebEngineWidgets WebEngine 模块 Qt page 页面

1、QtWebEngineWidgets模块

 

#include <QtWebEngineWidgets>

QT += webenginewidgets

 

1.1 QWebEnginePage

示例代码:

#include <QtWebEngineWidgets>
#include <QWebEnginePage>

//1、创建一个新的 QWebEnginePage 实例:
    page = new QWebEnginePage(this);

    //2、 加载一个网页:
    page->load(QUrl("http://www.example.com"));

    //3、设置页面的标题:
    //page->setTitle("My Web Page");

    //4、获取页面的 URL:
    QUrl url = page->url();

    //5、在页面中执行 JavaScript 代码:
    page->runJavaScript("alert('Hello, world!')");

    //6、获取页面的源代码:
    //QString html = page->toHtml();

    //7、获取页面的 favicon:
    //QIcon icon = page->icon();

    //8、监听页面的加载状态:
    connect(page, &QWebEnginePage::loadProgress, this, [this](int progress)
    {
        ui->progressBar->setValue(progress);
    });

    //9、打印页面:
    //page->print(&printer);

    //10、获取页面的主窗口:
    //QWebEngineView *view = page->view();

 

1.2 QWebEngineView

 

 

===============================================

注意: 编译一直报下面错误

Project ERROR: Unknown module(s) in QT: webenginewidgets

查资料常见原因以下三种:

1)QT版本过低。需要QT版本号为QT5.5版本及其以上。从Qt5.5开始,Qt WebKit模块被废弃,取而代之的是Qt WebEngine模块。且只有MSVC才支持该模块。

2)没有安装WebEngine库。在安装QT文件夹里有一个MaintenanceTool.exe应用程序,你可以更新和查看是否安装了WebEngine。

3)所使用的编译器不对。我遇到的就是这个原因。许多资料上写MSVC 2013及其以上版本构建,就可以支持Qt WebEngine。但我使用MSVC 2013不可以,并且MaintenanceTool.exe查看WebEngine显示只有msvc2017才支持,如下图

解决办法就是给QT配置 msvc2017的开发环境。

 

标签:QT,QtWebEngineWidgets,WebEngine,模块,Qt,page,页面
From: https://www.cnblogs.com/zhuchunlin/p/18307862

相关文章

  • mqtt mosquitto开源库实现
    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、MQTT是什么?二、使用步骤1.服务器配置安装并开启mosquitto2.客户端代码总结前言提示:这里可以添加本文要记录的大概内容:mosquitto开源库实现简单的mqtt发布和订阅功能程序。提示:......
  • 中科微电子ATGM336H GPS定位模块STM32应用
    文章目录前言1.中科微电子ATGM336H的使用1.1ATGM336H引脚说明1.2数据帧介绍1.3经纬度介绍1.4ATGM336H的启动方式2数据处理前置C语言知识2.1strstr函数2.2memset函数2.3memcpy函数2.4strtod函数3.开始移植3.1usart初始化程序3.2串口中断接收函数3.4数据帧......
  • 钡铼Profinet、EtherCAT、Modbus、MQTT、Ethernet/IP、OPC UA分布式IO系统BL20X系列耦
    BL20X系列耦合器是钡铼技术开发的一款用于分布式I/O系统的设备,专为工业环境下的高速数据传输和远程设备控制而设计,支持多种工业以太网协议,包括Profinet、EtherCAT、Modbus、MQTT、Ethernet/IP和OPCUA等。如果您正在考虑部署BL20X系列耦合器又不知选择哪款,那不妨来看一看钡铼......
  • 多种模块格式,包括 ES, CommonJS, UMD, AMD, SystemJS 和 IIFE的区别点分别是什么
    【转】https://zhuanlan.zhihu.com/p/668530823以下是各种模块格式的主要特点:ESModules(ESM):这是ECMAScript6(ES6)引入的官方标准格式。它支持导入和导出语句,以及静态分析和tree-shaking。它是唯一的静态模块系统,意味着你可以在编译时确定导入和导出的内容。CommonJS(C......
  • Pybind11和CMake构建python扩展模块环境搭建
    使用pybind11的CMake模板来创建拓展环境搭建从Github上下载cmake_example的模板,切换分支,并升级pybind11子模块到最新版本拉取pybind11使用cmake构建工具的模板仓库gitclone--recursivehttps://github.com/mrchipset/cmake_example.git切换分支gitcheckout-bdev升级s......
  • 多人合作使用项目使用子模块替代merge繁琐合并
    问:我的main分支的b文件夹只想放b分支的b文件夹里的文件,并且希望b分支更改后我这边也自动更新,请问怎么是实现你希望 main 分支中的 b 文件夹自动保持与 b 分支中的 b 文件夹同步。可以使用子模块(submodule)来实现这种效果。这种方法允许你在一个仓库中包含另一个仓库,并且......
  • qt程序在Linux环境下写入系统日志及做成服务
    一、将日志写入linux系统日志1、添加头文件#include<syslog.h>2、写入日志QStringlog="logtowrite";syslog(LOG_INFO,"%s",log.toStdString().c_str()); 二、将qt控制后程序做成linux服务参考:https://blog.csdn.net/CLinuxF/article/details/1298330081、在程序所在......
  • 零基础STM32单片机编程入门(十五) DHT11温湿度传感器模块实战含源码
    文章目录一.概要二.DHT11主要性能参数三.DHT11温度传感器内部框图四.DTH11模块原理图五.DHT11模块跟单片机板子接线和通讯时序1.单片机跟DHT11模块连接示意图2.单片机跟DHT11模块通讯流程与时序六.STM32单片机DHT11温度传感器实验七.CubeMX工程源代码下载八.小结一.......
  • 【python】PyQt5的窗口界面的各种交互逻辑实现,轻松掌控图形化界面程序
    ✨✨欢迎大家来到景天科技苑✨✨......
  • 模块
    模块允许代码分离,将其组织为可维护的单元,提升代码的可复用性和可读性;CommonJS(CJS)、ECMAScriptModules(ESM)CJS模块系统导出模块只需要使用module.exports或exports将模块中的内容导出即可module.exports,//指定属性导出module.exports.byebye=functio......