关于QT使用qwebengineview调用百度地图api
一、QT的版本以及编译器配置
第一步是QT的下载
QT的下载地址:https://download.qt.io/official_releases/qt/
tips:qwebengineview在5.5之后应用,又在5.6的时候删除,5.9之后又又引入了qwebengineview(只有用msvc编译器才能使用qwebengineview,后面调用百度地图api时使用)
第二步是QT的安装组件的选择
qt的安装程序正常运行就可,不管到选择组件的时候,要选择qwebengineview
第三步是下载Visual Studio
到官网区下载 Visual Studio Installer,然后打开Visual Studio Installer,选择社区版下载,下载的时候c++,就是下面图片圈红的那个
第四步是配置msvc编译器
打开QTCreator,点击上面菜单栏的工具
查看是否有msvc的编译器
选择相应的编译器
tips:x86是三十二位机用的,x64是64位机用的。
再查看debugger里是否有auto-detected cbd
如果有就直接在构建配套里更换:
如果没有,打开控制面板->程序->程序和功能->选择sdk进行更改
选择change来到下一个界面,选择debugging tools
再重新打开QTCreator查看是否有auto-detected cbd,然后进行配置。
第四步是打开百度地图开放平台(浏览器里)
选择控制台->登录->创建应用(先点击参考文档里的JavaScript API,后面有用)
这样就可获得ak,也就是调用百度地图的钥匙。切换到打开的JavaScript API页面,点击DEMO详情可以获得html代码。
之后在文件里写进html文件即可,切记你的密匙那里要换为自己的AK。
第六步即可在QTCreator里调用
第一个是要在pro文件里的QT += core gui后面加上webenginewidgets,如下
QT += core gui webenginewidgets
,然后在mainwindow文件里进行调用,代码如下
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include<iostream>
#include<QWebEngineView>
using namespace std;
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
QWebEngineView *map=new QWebEngineView(this);
map->load(QUrl("file:///D:/QTcode/transfer/mysite.html"));
map->resize(1000,1000);
map->show();
}
MainWindow::~MainWindow()
{
delete ui;
}
效果图:(联网才能显示)
参考文章
QT5.14搭建MSVC(VS2017) x86 以及64位编译器开发环境搭建(GDB配置)