1.调用google地图工程文件

QT       +=webkit
QT +=webkitwidgets
QT += core gui greaterThan(QT_MAJOR_VERSION, ): QT += widgets TARGET = googlemap
TEMPLATE = app SOURCES += main.cpp\
mainwindow.cpp HEADERS += mainwindow.h
FORMS += mainwindow.ui RESOURCES += \
google.qrc

2.mainwindow头文件

#ifndef MAINWINDOW_H
#define MAINWINDOW_H #include<QMainWindow>
#include<QtWebKit>
#include<QtWebKitWidgets/QtWebKitWidgets>
#include<QtWebKitWidgets/QWebView>
#include<QFile>
#include<QMessageBox>
#include<QTextStream>
#include<QtWebKitWidgets/QWebFrame> namespace Ui {
class MainWindow;
} class MainWindow : public QMainWindow
{
Q_OBJECT public:
explicit MainWindow(QWidget *parent = );
~MainWindow(); private slots: void on_webView_loadFinished(bool arg1); private: Ui::MainWindow *ui;
QString buf;
QString s_longitude;
QString s_latitude; }; #endif // MAINWINDOW_H

3 mianwindow源文件

#include "mainwindow.h"

#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :

    QMainWindow(parent),

    ui(new Ui::MainWindow)

{

    ui->setupUi(this);

    s_longitude = "23.2706716";

    s_latitude = "113.2931106";

    QFile file("E:/QtCreator/Qt5.1.1/Qtlianxi/googlemap/google.html");

    if (! file.open(QIODevice::ReadOnly))

    {//进行判断

        QMessageBox::information(NULL, QObject::tr("Unable to open file"),

        file.errorString());

    }

    ui->webView->settings()->setAttribute(QWebSettings::PluginsEnabled, true);

    ui->webView->settings()->setAttribute(QWebSettings::JavascriptEnabled, true);

    ui->webView->settings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true);

    ui->webView->settings()->setAttribute(QWebSettings::JavascriptCanOpenWindows, true);

    ui->webView->settings()->setAttribute(QWebSettings::JavaEnabled, true);

    QTextStream out(&file);

    QString output_file = out.readAll();

    ui->webView->setHtml(output_file);//显示网页内容

}

MainWindow::~MainWindow()

{delete ui;}

void MainWindow::on_webView_loadFinished(bool arg1)

{

      QWebFrame *qframe = ui->webView->page()->mainFrame();

      float longitude = s_longitude.toFloat();

      float latitude = s_latitude.toFloat();

      buf = QString("Open(%1, %2, %3);").arg(longitude).arg(latitude).arg(QString("\"center\""));

      qframe->evaluateJavaScript(buf);

      ui->label->setText(s_longitude);

      ui->label_2->setText(s_latitude);
}

4.mianwindow的ui文件

5.html文件

<!DOCTYPE html>

<html>

  <head>

    <title>Google Maps JavaScript API v3 Example: Map Simple</title>

    <meta name="viewport"

        content="width=device-width, initial-scale=1.0, user-scalable=no">

    <meta charset="UTF-8">

    <style type="text/css">

      html, body, #map_canvas {

        margin: ;

        padding: ;

        height: %;

      }

    </style>

    <script type="text/javascript"

        src="http://maps.googleapis.com/maps/api/js?sensor=false"></script>

    <script type="text/javascript">

      var map;

      function initialize() {

        var myOptions = {

          zoom: ,

          center: new google.maps.LatLng(23.271016, 113.295088),

          mapTypeId: google.maps.MapTypeId.ROADMAP

        };

        map = new google.maps.Map(document.getElementById('map_canvas'),

            myOptions);

Open(x,y,"center");

      }

function Open (x,y, text)

{

     var myLatlng = new google.maps.LatLng(x,y);

    map.setCenter (myLatlng, );

  var marker = new google.maps.Marker({

      position: myLatlng,

      title:text

  });

  marker.setMap(map);

}

      google.maps.event.addDomListener(window, 'load', initialize);

    </script>

  </head>

  <body>

    <div id="map_canvas"></div>

  </body>

</html>

6.出现的问题

 有时候能够正常显示地图,再不改变任何的情况下有时候有不能显示出地图

Qt5.1.1实现调用google地图显示的更多相关文章

  1. 怎样用Google APIs和Google的应用系统进行集成(3)----调用Google 发现(Discovery)API的RESTful服务

    说了这么多,那么首先同意我以Google Discovery RESTful服务为例,给大家演示怎样用最普通的Java代码调用Google Discovery RESTful服务. 引言: 在&quo ...

  2. arcgis jsapi 调用google地区服务

    做地理信息系统(GIS)项目,除了实现功能用户体验度要好之外,最重要的是地图渲染效果更要好.很多时候苦于数据的完整性和对于配图的审美观,程序猿们都很难配出好看的地图效果.基于上述一般直接调用googl ...

  3. Python调用Google翻译

    出自:http://blog.csdn.net/zhaoyl03/article/details/8830806 最近想动手做一个文档自动下载器,需要模拟浏览器的行为.虽然感觉思路上没有困难,但在技术 ...

  4. c#两种方式调用google地球,调用COM API以及调用GEPLUGIN 与js交互,加载kml文件,dae文件。将二维高德地图覆盖到到三维谷歌地球表面。

    网络上资源很多不全面,自己在开发的时候走了不少弯路,在这里整理了最全面的google全套开发,COM交互,web端交互.封装好了各种模块功能. 直接就可以调用. 第一种方式:调用COMAPI实现调用g ...

  5. QT5.3无法自动调用incomingConnection函数的问题(4.7没有这个问题)

    最近将qt4.7的一个工程移到5.3,遇到了几个麻烦事,主要是这个incomingConnection监听后无法自动调用的问题,在4.7上是完全没有问题的,到了5.3就不行,网上也查了下,网友们都是放 ...

  6. QT5.3无法自动调用incomingConnection函数的问题

    最近将qt4.7的一个工程移到5.3,遇到了几个麻烦事,主要是这个incomingConnection监听后无法自动调用的问题,在4.7上是完全没有问题的,到了5.3就不行,网上也查了下,网友们都是放 ...

  7. Delphi XE5 Android 调用 Google ZXing

    { Google ZXing Call demo Delphi Version: Delphi XE5 Version 19.0.13476.4176 By: flcop(zylove619@hotm ...

  8. Excel催化剂开源第28波-调用Google规划求解库

    在Excel催化剂的自定义函数中,有规划求解的函数,用于在一些凑数的场景,某财务工作网友向我提出的需求,例如用于凑发票额使用. 一般开发票的场景是多次采购合在一起开具,即多个订单产生后开,同时发票一般 ...

  9. 如何调用Google地图?

    在建设网站中用到地图是很常见的,在国内大部分都是用百度地图,但是有时候可能会用到国外地址,这时候就只能使用谷歌地图了. 方法一.使用框架引入谷歌地图 用框架引入谷歌地址是最简单的方法,不是专业开发人员 ...

随机推荐

  1. Apache ant 配置

    ANT_HOME C:\Program Files(D)\apache-ant-1.10.1Path %ANT_HOME%/binant -v

  2. git仓库删除所有提交历史记录

    stackoverflow原问题地址:http://stackoverflow.com/questions/13716658/how-to-delete-all-commit-history-in-g ...

  3. webdriver高级应用- 修改Chrome设置伪装成手机M站

    通过更改PC端Chrome浏览器的属性值,将PC端Chrome浏览器设定为手机端尺寸的浏览器,以便模拟手机端的浏览器,并完成各种页面操作. #encoding=utf-8from selenium i ...

  4. Linux进程间通信(IPC)

    linux下的进程通信手段基本上是从Unix平台上的进程通信手段继承而来的.而对Unix发展做出重大贡献的两大主力AT&T的贝尔实验室及BSD(加州大学伯克利分校的伯克利软件发布中心)在进程间 ...

  5. 从几率到logisitic函数

    odds 几率,又称事件的优势比.几率和概率的关系如下: o=p1−pp=o1+o Logistic 回归模型的因变量只有 1/0 两种取值.假设在 p 个独立自变量 x1,x2,…,xp 作用下,记 ...

  6. Good Bye 2017

    太菜了啊,一不小心就goodbye rating了 A. New Year and Counting Cards time limit per test 1 second memory limit p ...

  7. Jeddict:从服务器的验证过程,思考学习新事物的套路

    结合一路研究Jeddict使用的过程经验来看,在这里说一下关于服务器配置的东西.在我们团队,最开始用这个插件的时候,因为公司用的应用服务器是Jboss EAP 7,所以,我们自然而然的,想当然的直接使 ...

  8. 项目记事【Hibernate-1】:调用 saveOrUpdate() 方法出错

    Hibernate 版本:3.3.1 背景: 后端编辑一个对象,该对象(ProductDO)下,有一个另一个自定义对象(ProductLiabilityDO)的 OneToMany 关系,如下: @O ...

  9. zoj 1425 最大交叉匹配

    Crossed Matchings Time Limit: 2 Seconds      Memory Limit: 65536 KB There are two rows of positive i ...

  10. Java实现一致性Hash算法

    Java代码实现了一致性Hash算法,并加入虚拟节点.,具体代码为: package com.baijob.commonTools;   import java.util.Collection; im ...