注意:因为qt本身的支持原因,QWebEngine组件只支持MSVC编译器,不支持mingw编译器,且编译时只能使用release版本,无法使用debug,具体原因未知
首先需要去到高德开放平台给你自己注册一个key来使用高德地图的API
在控制台-我的应用-创建新应用
这时在我的应用中就会出现一个key
接下来去到图中红圈处
再点击左边最下面的示例中心,点击第一个地图的创建,这时右边就会出现一串html的代码
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="initial-scale=1.0, user-scalable=no, width=device-width">
<link rel="stylesheet" href="https://a.amap.com/jsapi_demos/static/demo-center/css/demo-center.css" />
<title>地图显示</title>
<style>
html,
body,
#container {
width: 100%;
height: 100%;
}
</style>
</head>
<body>
<div id="container"></div>
<!-- 加载地图JSAPI脚本 -->
<script src="https://webapi.amap.com/maps?v=2.0&key=您申请的key值"></script>
<script>
var map = new AMap.Map('container', {
viewMode: '2D', // 默认使用 2D 模式,如果希望使用带有俯仰角的 3D 模式,请设置 viewMode: '3D',
zoom:11, //初始化地图层级
center: [116.397428, 39.90923] //初始化地图中心点
});
</script>
</body>
</html>
将自己申请到的key值填入后保存到本地就行了
回到QT,在pro文件中加入一句
QT += core gui webenginewidgets
//添加在已有的模块后面即可
接着去ui设计师里面为界面添加一个Widget,再将其提升为QWebEngineView。然后把你保存的html文件当成资源文件添加进项目,在你的Widget.cpp中添加一句代码就能实现了
ui->view->load(QUrl("你的html文件的URL"));
效果展示: