QT 浏览器组件使用

本文介绍了从Qt4到Qt5.6以上版本在使用WebKit和Chromium后端的变化,强调了在MSVC2019环境下编译QWebEngine的注意事项,以及如何在Win7上打包应用并解决VCRuntime140_1.dll问题。还提供了一个HTMLdemo和使用QWebEngineView创建对话框APP的示例。
摘要由CSDN通过智能技术生成

 1. Qt4中使用webkit模块;

  2. Qt5 ~Qt5.5使用webkitwidgets模块,使用WebKit作为后端;

  3. Qt5.6以上版本使用webenginewidgets模块,使用Chromium作为后端。QT5.6之后开始支持

这里一定要指定msvc2017(或者msvc2019都可以) 64编译器,如果指定minGW依然会报错,因为MinGW不支持QWebEngine,如果QT中msvc2019编译kit是感叹号说明没有安装MSVC2019依赖,

需要在安装VS2019的时候,把这些也安装了,我只安装了X64缓解库和生成工具,就自动OK了

QT5.15.2 webenginewidgets 64位可以在win7 64位上运行,打包的时候添加vcruntime140_1.dll

QT C++调用JS

测试的html demo

<!DOCTYPE html>  
<html>  
<head lang="en">  
    <meta charset="UTF-8">  
    <title>test1</title>  
    <script type="text/javascript">  
	    function getGeoData()
    	{
    		alert("123"); 
    		return "xiaoli"
    	    
    	}
    		function showalert(text) 
			{
				alert(text)
			}	
    	  
        function buttonClick(){  
            console.log("you click 你点击了按钮哦");  
            res = getGeoData()
            document.getElementById('myvalue').innerHTML = res;;
            alert(res);  
           
        }  
        function callFunctionDemo(name){

        alert("Hello World " + name);
       }
   
    </script>  
</head>  
<body>  
<input  id="button" type="button" value="点击" onclick="buttonClick();">  
<a id= "myvalue">empty value</a>
</body>  
</html>  

 创建一个对话框APP,添加

QT       += core gui webenginewidgets network

QWebEngineView* m_pWebView;

m_pWebView = new QWebEngineView(this);
    this->setCentralWidget(m_pWebView);
    this->setWindowState(Qt::WindowMaximized);   
    m_pWebView->setUrl(QUrl("file:E://web//index.html"));
    connect(m_pWebView, SIGNAL(loadFinished(bool)), this, SLOT(slotLoadfinish(bool)));
    m_pWebView->show();

//调用的函数哪怕没有参数也要括号
QString jsCode = QString("showalert('%1')").arg("Hello QtWebEngine xiaoyu```````````!");
m_pWebView->page()->runJavaScript(jsCode, [](const QVariant &v) { qDebug() << v.toString(); });

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值